#!/usr/bin/env python # Wenchang Yang (wenchang@princeton.edu) # Tue Dec 2 03:21:47 PM EST 2025 if __name__ == '__main__': import sys,os try: from misc.timer import Timer tt = Timer(f'[{os.getcwd()}] start ' + ' '.join(sys.argv)) except: pass import sys, os.path, os, glob, datetime import xarray as xr, numpy as np, pandas as pd, matplotlib.pyplot as plt #more imports wython = '/tigress/wenchang/wython' if wython not in sys.path: sys.path.append(wython); print('added to python path:', wython) #from misc import get_kws_from_argv # if __name__ == '__main__': try: tt.check('end import') except: pass # #start from here u = False if 'v' in sys.argv else True ifile = '/projects/GEOCLIM/wenchang/MODEL_OUT/AM2.5C360/amipHadISST_chancorr_tigercpu_intelmpi_18_1080PE/en01/POSTP/19820101.atmos_daily.nc' ds = xr.open_dataset(ifile) if u: u850_yr = ds['u850'].load() u250_yr = ds['u250'].load() u_steer = 0.8 * u850_yr + 0.2 * u250_yr else: v850_yr = ds['v850'].load() v250_yr = ds['v250'].load() v_steer = 0.8 * v850_yr + 0.2 * v250_yr #T11 ifile = 'amipHadISSTlong_chancorr_tigercpu_intelmpi_18_1080PE/steering_wind_T11_amipHadISSTlong_chancorr_tigercpu_intelmpi_18_1080PE_ens01_1982.nc' ds = xr.open_dataset(ifile) if u: u_steer_T11 = ds['u_steer_T11'].load() else: v_steer_T11 = ds['v_steer_T11'].load() if __name__ == '__main__': from wyconfig import * #my plot settings from geoplots import mapplot fig,axes = plt.subplots(2, 1, figsize=(6,6)) da = u_steer if u else v_steer da11 = u_steer_T11 if u else v_steer_T11 ax = axes[0] long_name = 'u_steer' if u else 'v_steer' da.isel(time=-1).assign_attrs(long_name=long_name, units='m/s').plot(ax=ax, vmax=40) ax.set_title('raw '+long_name, loc='right') ax = axes[1] da11.isel(time=-1).assign_attrs(units='m/s').plot(ax=ax, vmax=40) ax.set_title('T11', loc='right') for ax in axes: plt.sca(ax) mapplot() ax.set_xlabel('') ax.set_ylabel('') #savefig if 'savefig' in sys.argv or 's' in sys.argv: figname = __file__.replace('.py', f'.png') if u: figname = figname.replace('.png', '__usteer.png') else: figname = figname.replace('.png', '__vsteer.png') if 'overwritefig' in sys.argv or 'o' in sys.argv: wysavefig(figname, overwritefig=True) else: wysavefig(figname) try: tt.check(f'**Done**') except: pass print() if 'notshowfig' in sys.argv or 'n' in sys.argv: pass else: if 'plt' in globals(): plt.show()