;+
; Contains the sls3 procedure
;
; :Author:
; Laurent Lamy
;
; :History:
: 2009/01: Created
;
; 2009/05/06: Last Edit
;-
;
;+
; Système de longitude variable (tel que la longitude sub-solaire
; SLS soit égale à 100° lorsqu'un pulse de SKR est observé)
; [Kurth et al,2008], valable sur l'intervalle [2004001,2007222]
;
; :Uses:
; extract_ephem
;
; :Params:
; aaaajjjd: in, required, type=sometype
; A parameter named aaaajjjd
; aaaajjjf: in, required, type=sometype
; A parameter named aaaajjjf
; deltat: in, required, type=sometype
; A parameter named deltat
; lambdasun: in, required, type=sometype
; A parameter named lambdasun
; cassinilong: in, required, type=sometype
; A parameter named cassinilong
; periode: in, required, type=sometype
; A parameter named periode
; phasedrift: in, required, type=sometype
; A parameter named phasedrift
;
; :Keywords:
; dmin: in, optional, type=sometype
; A keyword named dmin
;-
PRO SLS3,aaaajjjd,aaaajjjf,deltat,lambdasun,cassinilong,periode,phasedrift,dmin=dmin
rsat = 60268000.d0 ; Rayon kronien
c = 3e8 ; Célérité
; Calcul éphémérides:
extract_ephem,aaaajjjd,aaaajjjf,t,lat,localtime,rs,source='sq',dmin=dmin
coefs = [86.6681d0,-2.7537d0,0.0047730d0,-4.8755d-06,3.5653d-09,-9.1485d-13]
owlt = rs*rsat/c ; Temps de propagation lumière en secondes
deltat = t-aj_t97(2004001)-owlt/86400.
; Ex Article Kurth: jour 2006001 à minuit
; owlt = 8.69
; localtime = 4.952
; deltat = Julday(1,1,2006,0,0,0)-Julday(1,1,2004,0,0,0)-owlt/86400.
phasedrift = poly(deltat,coefs)
lambdasun = 360.*(1.0/0.4497)*deltat-phasedrift+100.
lambdasun = lambdasun mod 360 + 360*(lambdasun lt 0)
Cassinilong = (12.0-localtime)*15.+lambdasun
Cassinilong = Cassinilong mod 360+360*(Cassinilong lt 0)
phi = 360.*(1.0/0.4497)*deltat-phasedrift+100.
periode = 360.*1440./deriv(deltat,phi)
deltat+=aj_t97(2004001)
end