;+ ; NAME: ; vt3d_thermwave_nloc_p0_nz ; PURPOSE: (one line) ; Return thermal wave, multiple locations, phase=0, n depths ; DESCRIPTION: ; Return thermal wave, multiple locations, phase=0, n depths ; CATEGORY: ; Volatile Transport ; CALLING SEQUENCE: ; temp = vt3d_thermwave_nloc_p0_nz(temp_terms, dtemp_dzeta, zeta) ; INPUTS: ; temp_terms : complex[nloc, n_terms + 1] ; phase : float[n_t] = 0. ; dtemp_dzeta : scalar ; zeta : float[n_z] ; OUTPUTS: ; temp: float[n_z] ; ; RESTRICTIONS: ; PROCEDURE: ; MODIFICATION HISTORY: ; Written 2011 Dec 30, by Leslie Young, SwRI ; Modified 2012 Sep 30, LAY. Added m inside sqrt(_i) term. ;- function vt3d_thermwave_nloc_p0_nz, temp_terms, dtemp_dzeta, zeta _i = complex(0,1) ; get the dimensions of temp_t, phase, substrate n_term = n_elements(temp_terms) - 1 n_z = n_elements(zeta) n_loc = 1 n_t = 1 temp_0 = replicate(temp_terms[0],n_z) ; [n_z] temp_f = dtemp_dzeta * zeta ; [n_z] temp = complex(temp_0 + temp_f,0) ; [n_z] for m = 1,n_term do begin temp_m = temp_terms[m]; scalar temp += (temp_m*exp(sqrt(_i*m)*zeta)) ; [n_z] endfor return, re(temp) end