;+ ; NAME: ; rbsp_efw_boom_length (function) ; ; PURPOSE: ; Return the boom length for a give time. ; ; CATEGORIES: ; ; CALLING SEQUENCE: ; result = rbsp_efw_boom_length(sc, time) ; ; ARGUMENTS: ; sc: (In, required) Spacecraft name. Should be 'a' or 'b'. ; time: (In, required) A value of time. ; ; KEYWORDS: ; ; COMMON BLOCKS: ; ; EXAMPLES: ; ; SEE ALSO: ; ; HISTORY: ; 2012-10-08: Created by Jianbao Tao (JBT), SSL, UC Berkley. ; 2012-11-05: Initial release to TDAS. JBT, SSL/UCB. ; ; VERSION: ; $LastChangedBy: jianbao_tao $ ; $LastChangedDate: 2012-11-05 08:45:25 -0800 (Mon, 05 Nov 2012) $ ; $LastChangedRevision: 11176 $ ; $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/ssl_general/tags/tdas_8_00/missions/rbsp/efw/rbsp_efw_boom_length.pro $ ; ;- function rbsp_efw_boom_length, sc, time ; sc: either 'a' or 'b' ; time: epoch time, i.e., a double precision number of seconds since 1/1/1970 ; Get the RBSP EFW boom lengths based on the deployment history from ; John Bonnell. ; The returned value is of format [len_boom12, len_boom34, len_boom56]. ; The boom lengths are in units of meters. compile_opt idl2 ; Full length time, i.e., deployment completion time, in UT. t_full_length_spb_a = time_double('2012-09-22/19:47:50') t_full_length_axb_a = time_double('2012-09-24/18:28:30') t_full_length_spb_b = time_double('2012-09-22/22:31:31') t_full_length_axb_b = time_double('2012-09-24/20:56:00') ; As of 10/8/12, the boom length before the deployment completion is set as ; NaNs. (JBT, SSL) t_full = time_double('2012-09-25') if time lt t_full then return, [0, 0, 0] * !values.d_nan len12_a = 49.1d * 2d + 1.82d len34_a = 49.1d * 2d + 1.82d len56_a = 4.02d + 4.02d + 1.2d + 0.76d len12_b = 49.1d * 2d + 1.82d len34_b = 49.1d * 2d + 1.82d len56_b = 4.02d + 4.02d + 1.2d + 0.76d if strcmp(sc, 'a', /fold) then return, [len12_a, len34_a, len56_a] if strcmp(sc, 'b', /fold) then return, [len12_b, len34_b, len56_b] return, [0, 0, 0] * !values.d_nan ; something bad has happened if the code reach ; this point. end