Source code for pyspedas.projects.themis.state_tools.state

from pyspedas.projects.themis.load import load
from pyspedas.tplot_tools import data_exists, del_data
from .apply_spinaxis_corrections import apply_spinaxis_corrections
from .spinmodel.spinmodel_postprocess import spinmodel_postprocess


[docs] def state(trange=['2007-03-23', '2007-03-24'], probe='c', level='l1', suffix='', get_support_data=False, varformat=None, exclude_format=None, varnames=[], downloadonly=False, notplot=False, no_update=False, time_clip=False, keep_spin=False): """ Load THEMIS state data Parameters ---------- trange: list of str time range of interest [starttime, endtime] with the format ['YYYY-MM-DD','YYYY-MM-DD'] or to specify more or less than a day ['YYYY-MM-DD/hh:mm:ss','YYYY-MM-DD/hh:mm:ss'] Default: ['2007-03-23', '2007-03-24'] probe: str or list of str Spacecraft probe letter(s) ('a', 'b', 'c', 'd' and/or 'e') Default: 'c' level: str Data type; Valid options: 'l1' Default: 'l1' suffix: str The tplot variable names will be given this suffix. Default: None get_support_data: bool Data with an attribute "VAR_TYPE" with a value of "support_data" will be loaded into tplot. Default: False varformat: str The file variable formats to load into tplot. Wildcard character "*" is accepted. By default, all variables are loaded in. Default: None (all variables are loaded) exclude_format: str If specified, CDF variables matching this pattern will not be processed. Wildcard character "*" is accepted. Default: None varnames: list of str List of variable names to load. If list is empty or unsoecified, all data variables are loaded Default: [] (all variables are loaded) downloadonly: bool Set this flag to download the CDF files, but not load them into tplot variables Default: false notplot: bool Return the data in hash tables instead of creating tplot variables Default: false no_update: bool If set, only load data from your local cache Default: false time_clip: bool Time clip the variables to exactly the range specified in the trange keyword Default: false keep_spin: bool If True, do not delete the spin model tplot variables after the spin models are built. Default: False Returns ------- List of str List of tplot variables created Empty list if no data loaded Example ------- >>> import pyspedas >>> from pyspedas import tplot >>> pyspedas.projects.themis.state(trange=['2007-03-23', '2007-03-24'], probe='a', varnames=['tha_pos_gse','tha_vel_gse']) >>> tplot['tha_pos_gse', 'tha_vel_gse']) """ # If support data is being loaded, preemptively delete the thx_spinras_correction and thx_spindec_correction # variables, to avoid dangling corrections if they don't exist in this time interval. if get_support_data: for p in probe: spinras_corrvar='th'+ p +'_spinras_correction' spindec_corrvar='th'+ p +'_spindec_correction' if data_exists(spinras_corrvar): del_data(spinras_corrvar) if data_exists(spindec_corrvar): del_data(spindec_corrvar) res = load(instrument='state', trange=trange, level=level, probe=probe, suffix=suffix, get_support_data=get_support_data, varformat=varformat, varnames=varnames, exclude_format = exclude_format, downloadonly=downloadonly, notplot=notplot, time_clip=time_clip, no_update=no_update) if get_support_data: for p in probe: # Process spin model variables spinmodel_postprocess(p,suffix) if not keep_spin: spinvar_pattern = 'th' + p + '_spin_*' del_data(spinvar_pattern) # Perform spin axis RA and Dec corrections spinras_var = 'th' + p + '_spinras' + suffix delta_spinras_var = 'th' + p + '_spinras_correction' + suffix corrected_spinras_var = 'th' + p + '_spinras_corrected' + suffix spindec_var = 'th' + p + '_spindec' + suffix delta_spindec_var = 'th' + p + '_spindec_correction' + suffix corrected_spindec_var = 'th' + p + '_spindec_corrected' + suffix apply_spinaxis_corrections(spinras=spinras_var, delta_spinras=delta_spinras_var, corrected_spinras=corrected_spinras_var, spindec=spindec_var, delta_spindec=delta_spindec_var, corrected_spindec=corrected_spindec_var) return res