# steps to running this code
# 1. source /global/common/software/e3sm/anaconda_envs/load_latest_e3sm_unified_pm-cpu.sh" 
# 2  export FILENAME=tarGetSpecific_eam_h#_file.nc
# 3. python gmeanflex.py

import os
import numpy as np
import xarray as xr

# pass filename via env, format
# export FILENAME=Specific_eam_h_file.nc


infile=os.getenv('FILENAME')
df = xr.open_mfdataset(infile)

# compute global mean of selected variables if exist

area = df['area']

areaSum = area.sum()

firstTime = 1 

# get # of timeSlice in order to compute time average
ntimes = df.sizes['time'] 

for var in ['AODVIS','AODDUST','U10','CLDHGH','CLDHGH_CAL','CLDTOT','LWCF','TREFHT']:

    if var not in df.variables:
       continue

    gmeanv = ((df[var]*area).sum()/areaSum).values/ntimes

    # print the means with 4 decimal places

    if firstTime == 1:
       print("\nFile processed is :"+infile+"\n")
       firstTime = 0

    print("Global mean "+var+":\t " + "%.4f"%gmeanv+"\n")

exit()


