---------------------------------------------------
DOCMOD: DOCUMENTATION OF FORTRAN MODULES SOURCE
        P. ROBERT, 1990, revised 1996
---------------------------------------------------

file source: rocotlib_V3p2.f

nb. of lines     : 5465
nb. of function  :    1
nb. of subroutine:  190
nb. of program   :    0
                      ____
nb. of modules   :  191
nb. of categories:    8                
---------------------------------------------------


basic compute modules  (9)
 ___________________________________________________________________________________________________________________________________________________________________
|    |                |                                           |                                                 |                                               |
|type|module          |  arguments                                |  object                                         |  author                                       |
|____|________________|___________________________________________|_________________________________________________|_______________________________________________|
|    |                |                                           |                                                 |                                               |
|subr|cp_angle_and_rat|(ux,uy,uz,vx,vy,vz,angle,ratio)            |compute_angle_and_ratio beetween U and V vectors |P. Robert, CRPE, 1992                          |
|subr|cp_Euler_interp |(a1,b1,c1,a2,b2,c2,ti,dt,ai,bi,ci)         |compute_Euler_angles_interpolation               |P. Robert, SDev, 2020                          |
|subr|cp_geo_dipole_di|(iyear,idoy,d1,d2,d3)                      |compute_dipole_direction in GEO system           |P. Robert, LPP , 2016                          |     
|subr|cp_gei_sun_dir  |(iyear,idoy,ih,im,is,                      |compute_sun_direction in GEI system              |CT.Russel, CE-D, 1971,Rev. P.R., 1992,2001,2002  |
|subr|cp_sunrise_sunse|(iyear,imon,iday,rlat,rlon,                |compute_sunset_time and others                   |P. Robert, CRPE, 2001,Revised Dec. 2011        |
|subr|cp_time_param   |(iyear,imonth,iday,ih,im,is)               |compute_time_parameters and time-dependent matrix|P. Robert, CRPE, 1992                          |
|subr|cp_time_param2  |(jd1950,houday)                            |compute_time_parameters and time-dependent matrix|P. Robert, CRPE, 2001                          |
|subr|cp_time_param3  |(jd2000,houday)                            |compute_time_parameters and time-dependent matrix|P. Robert, CRPE, 2001                          |
|subr|cp_tpn_param    |(xo,yo,zo,xs, Tx,Ty,Tz, Px,Py,Pz, Nx,Ny,Nz)|compute_TPN_system                               |P. Robert, CETP, 2004                          |
|____|________________|___________________________________________|_________________________________________________|_______________________________________________|


give modules   (7)
 __________________________________________________________________________________________________________________________________________
|    |                |                                     |                                                        |                     |
|type|module          |  arguments                          |  object                                                |  author             |
|____|________________|_____________________________________|________________________________________________________|_____________________|
|    |                |                                     |                                                        |                     |
|subr|g_gei_geo_dipole|(dxgei,dygei,dzgei,                  |give_dipole_direction in GEI and GEO system             |P. Robert, CRPE, 1992|
|subr|g_gsm_dipole_til|(diptan)                             |give_dipole_tilt_angle in radians                       |P. Robert, CRPE, 1992|
|subr|g_gei_geo_eclipt|(exgei,eygei,ezgei,                  |give_ecliptic_direction in GEI and GEO system           |P. Robert, CRPE, 1992|
|subr|g_gei_geo_sun_ro|(rxgei,rygei,rzgei,rxgeo,rygeo,rzgeo)|give_sun_rotation_direction in GEI and GEO system       |P. Robert, CRPE, 1992|
|subr|g_gei_geo_sun_di|(sxgei,sygei,szgei,sxgeo,sygeo,szgeo)|give_sun_direction in GEI and GEO system                |P. Robert, CRPE, 1992|
|subr|g_gei_sun_param |(gmst,slon,sras,sdec,obli)           |give_sun_parameter dependant of time in GEI system      |P. Robert, CRPE, 1992|
|subr|g_rocot_version_|(vernum,verdat)                      |give_version_number and modification date of the library|P. Robert, CRPE, 1992|
|____|________________|_____________________________________|________________________________________________________|_____________________|

calendar modules  (20)
 __________________________________________________________________________________________________________________________________________
|    |                |                                   |                                                         |                      |
|type|module          |  arguments                        |  object                                                 |  author              |
|____|________________|___________________________________|_________________________________________________________|______________________|
|    |                |                                   |                                                         |                      |
|subr|cp_nbday_in_mont|(iyear,imonth,nbday)               |compute_number_of_day_of_the_month                       |P. Robert, CRPE, 2001 |
|subr|cp_en_day_name  |(iday,cday,nbcha)                  |compute_english_day_name, ex: 'Monday' for iday=1        |P. Robert, CRPE, 2001 |
|subr|cp_en_month_name|(imonth,cmonth,nchar)              |compute_english_month_name                               |P. Robert, CRPE, 2001 |
|subr|cp_fr_day_name  |(iday,cday,nbcha)                  |compute_french_day_name, ex: 'Lundi' for iday=1          |P. Robert, CRPE, 2001 |
|subr|cp_fr_month_name|(imonth,cmonth,nchar)              |compute_french_month_name                                |P. Robert, CRPE, 2001 |
|subr|cp_leap_year    |(iyear,ileap)                      |compute_leap_year with ileap=1 for leap year, 0 if not   |P. Robert, CRPE, 1992 |
|subr|cp_seasons      |(iyear,id_sso,id_wso,id_seq,id_feq,|compute_seasons, i.e. solstice & equinox                 |P. Robert, SDev, 2017 |
|subr|cv_doty_to_date |(idoy,iyear,imonth,iday)           |convert_day_of_year for a given year in date             |P. Robert, CRPE, 1992 |
|subr|cv_jul2000_to_da|(jd00,iyear,imonth,iday)           |convert_julian_day_2000 in date                          |P. Robert, CRPE, 1992 |
|subr|cv_jul1950_to_da|(jd50,iyear,imonth,iday)           |convert_julian_day_1950 in date                          |P. Robert, CRPE, 1992 |
|subr|cv_weekn_to_date|(iweek,iyear,imonth,iday)          |convert_first_day_of_week_number in date                 |P. Robert, CRPE, 2001 |
|subr|cv_date_to_dotw |(iyear,imonth,iday,idow)           |convert_date in day_of_the_week                          |P. Robert, CRPE, 2001 |
|subr|cv_date_to_doty |(iyear,imonth,iday,idoy)           |convert_date in day_of_year with idoy=1 for january 1    |P. Robert, CRPE, 1992 |
|subr|cv_hms_to_dech  |(ih,im,is,houday)                  |convert_hours_minutes_seconds in decimal hour of the day |P. Robert, CRPE, 1992 |
|subr|cv_date_to_jul19|(iyear,imonth,iday,jd50)           |convert_date in julian_day_1950 with jd50=0 for jan 1    |P. Robert, CRPE, 1992 |
|subr|cv_date_to_jul20|(iyear,imonth,iday,jd00)           |convert_date in julian_day_2000 with jd00=0 for january 1|P. Robert, CRPE, 1992 |
|subr|cv_dhms_to_msotd|(ih,im,is,ims,milday)              |convert_hours_minutes_seconds_ms in millisec_of_day      |P. Robert, CRPE, 2001 |
|subr|cv_dech_to_hms  |(houday,ih,im,is)                  |convert_decimal hour of the day in time                  |P. Robert, CRPE, 1992 |
|subr|cv_msotd_to_hmsm|(milday,ih,im,is,ims)              |convert_millisec. of the day in time                     |P. Robert, CRPE, 2001 |
|subr|cv_date_to_weekn|(iyear,imonth,iday,iweek)          |convert_date in week_of_the_year                         |P. Robert, SDev, 2017 |
|____|________________|___________________________________|_________________________________________________________|______________________|


matrix operations   ( 15)
 _____________________________________________________________________________________________________________________________________________________________
|    |                |                                         |                                                         |                                   |
|type|module          |  arguments                              |  object                                                 |  author                           |
|____|________________|_________________________________________|_________________________________________________________|___________________________________|
|    |                |                                         |                                                         |                                   |
|subr|mat_cp_varmin   |(ifc,Vx,Vy,Vz,n,irep,covar,lambda,eigvec)|compute variance minimum coordinate of a signal Vx,Vy,Vz |P. Robert, CETP, 2001, rev. PR 2016|
|subr|mat_cp_covarianc|(Vx,Vy,Vz,n,covar)                       |compute covariance matrix for a vector series V(n)       |P. Robert, CETP, 2001, rev. PR 2016|
|subr|mat_diagonalise |(mat,lambda,eigvec)                      |diagonalise the given matrix mat(3,3)                    |P. Robert, CETP, 2001, rev. PR 2016|
|subr|mat_check_ortho |(ifc,mat)                                |check orthogonality of matrix components                 |P. Robert, CETP, 2001, rev. PR 2016|
|subr|mat_cp_determin |(mat,det)                                |compute determinant of the given matrix                  |P. Robert, CETP, 2001, rev. PR 2016|
|subr|mat_cp_eigen_vec|(mat,lambda,eigvec)                      |compute eigen vectors and eigen values of real mat(3,3)  |  unknown, CETP, 2001, rev. PR 2016|
|subr|mat_cp_pythag_fu|(a,b,fpyth)                              |Pythagore function of two real (used by mat_cp_eigen_vec)|  unknown, CETP, 2001, rev. PR 2016|
|subr|mat_normalize_ve|(mat)                                    |normalize to 1. the vectors of the input matrix          |P. Robert, CETP, 2001, rev. PR 2016|
|subr|mat_product     |(mat1,mat2,mat3)                         |matrix product of two given matrix of dim. 3             |P. Robert, CETP, 2001, rev. PR 2016|
|subr|mat_somme       |(mat1,mat2,mat3)                         |matrix somme of two given matrix of dim. 3               |P. Robert, LPP , 2016              |
|subr|mat_diff        |(mat1,mat2,mat3)                         |matrix difference of two given matrix                    |P. Robert, LPP , 2016              |
|subr|mat_transpose   |(mat)                                    |transpose input matrix                                   |P. Robert, CETP, 2001, rev. PR 2016|
|subr|mat_change_coord|(mat,Vx,Vy,Vz,n)                         |change coordinate of a vector serie with a given matrix  |P. Robert, CETP, 2001, rev. PR 2016|
|subr|mat_write       |(ifc,com,mat)                            |print on ifc unit mat(3,3) with a comment                |P. Robert, CETP, 2001, rev. PR 2016|
|subr|mat_write_eigen_|(ifc,lambda,mat)                         |print on ifc unit eigen values & vectors of mat(3,3)     |P. Robert, CETP, 2001, rev. PR 2016|
|____|________________|_________________________________________|_________________________________________________________|___________________________________|

transformation modules  (50)
 _______________________________________________________________________________________________________________________________
|    |             |                                           |                                          |                     |
|type|module       |  arguments                                |  object                                  |  author             |
|____|_____________|___________________________________________|__________________________________________|_____________________|
|    |             |                                           |                                          |                     |
|subr|t_car_to_sph |(x,y,z,r,teta,phi)                         |transforms_car_to_sph: CAR -> SPH  system |P. Robert, CRPE, 1992|
|subr|t_dm_to_geo  |(xdme,ydme,zdme,rlat,rlong,xgeo,ygeo,zgeo) |transforms_dme_to_geo: DM  -> GEO  system |P. Robert, CRPE, 1992|
|subr|t_gei_to_geo |(xgei,ygei,zgei,xgeo,ygeo,zgeo)            |transforms_gei_to_geo: GEI -> GEO  system |P. Robert, CRPE, 1992|
|subr|t_gei_to_gse |(xgei,ygei,zgei,xgse,ygse,zgse)            |transforms_gei_to_gse: GEI -> GSE  system |P. Robert, CRPE, 1992|
|subr|t_gei_to_gsm |(xgei,ygei,zgei,xgsm,ygsm,zgsm)            |transforms_gei_to_gsm: GEI -> GSM  system |P. Robert, CRPE, 1992|
|subr|t_gei_to_gseq|(xgei,ygei,zgei,xgsq,ygsq,zgsq)            |transforms_gei_to_gsq: GEI -> GSEQ system |P. Robert, CRPE, 1992|
|subr|t_gei_to_mag |(xgei,ygei,zgei,xmag,ymag,zmag)            |transforms_gei_to_mag: GEI -> MAG  system |P. Robert, CRPE, 1992|
|subr|t_gei_to_sm  |(xgei,ygei,zgei,xsma,ysma,zsma)            |transforms_gei_to_sma: GEI -> SM   system |P. Robert, CRPE, 1992|
|subr|t_geo_to_dm  |(xgeo,ygeo,zgeo,rlat,rlong,xdme,ydme,zdme) |transforms_geo_to_dme: GEO -> DM   system |P. Robert, CRPE, 1992|
|subr|t_geo_to_gei |(xgeo,ygeo,zgeo,xgei,ygei,zgei)            |transforms_geo_to_gei: GEO -> GEI  system |P. Robert, CRPE, 1992|
|subr|t_geo_to_gse |(xgeo,ygeo,zgeo,xgse,ygse,zgse)            |transforms_geo_to_gse: GEO -> GSE  system |P. Robert, CRPE, 1992|
|subr|t_geo_to_gsm |(xgeo,ygeo,zgeo,xgsm,ygsm,zgsm)            |transforms_geo_to_gsm: GEO -> GSM  system |P. Robert, CRPE, 1992|
|subr|t_geo_to_gseq|(xgeo,ygeo,zgeo,xgsq,ygsq,zgsq)            |transforms_geo_to_gsq: GEO -> GSEQ system |P. Robert, CRPE, 1992|
|subr|t_geo_to_mag |(xgeo,ygeo,zgeo,xmag,ymag,zmag)            |transforms_geo_to_mag: GEO -> MAG  system |P. Robert, CRPE, 1992|
|subr|t_geo_to_sm  |(xgeo,ygeo,zgeo,xsma,ysma,zsma)            |transforms_geo_to_sma: GEO -> SM   system |P. Robert, CRPE, 1992|
|subr|t_geo_to_vdh |(xgeo,ygeo,zgeo,rlat,rlong,xvdh,yvdh,zvdh) |transforms_geo_to_vdh: GEO -> VDH  system |P. Robert, CRPE, 1992|
|subr|t_gse_to_gei |(xgse,ygse,zgse,xgei,ygei,zgei)            |transforms_gse_to_gei: GSE -> GEI  system |P. Robert, CRPE, 1992|
|subr|t_gse_to_geo |(xgse,ygse,zgse,xgeo,ygeo,zgeo)            |transforms_gse_to_geo: GSE -> GEO  system |P. Robert, CRPE, 1992|
|subr|t_gse_to_gsm |(xgse,ygse,zgse,xgsm,ygsm,zgsm)            |transforms_gse_to_gsm: GSE -> GSM  system |P. Robert, CRPE, 1992|
|subr|t_gse_to_gseq|(xgse,ygse,zgse,xgsq,ygsq,zgsq)            |transforms_gse_to_gsq: GSE -> GSEQ system |P. Robert, CRPE, 1992|
|subr|t_gse_to_mfa |(xgse,ygse,zgse,bx,by,bz,xmfa,ymfa,zmfa)   |transforms_gse_to_mfa: GSE -> MFA  system |P. Robert, LPP , 2016|
|subr|t_gse_to_sr2 |(xgse,ygse,zgse,rotx,roty,rotz,            |transforms_gse_to_sr2: GSE -> SR2  system |P. Robert, CETP, 2001|
|subr|t_gse_to_tpn |(xgse,ygse,zgse,xo,yo,zo,xs,xtpn,ytpn,ztpn)|transforms_gse_to_tpn: GSE -> TPN  system |P. Robert, LPP , 2016|
|subr|t_gsm_to_gei |(xgsm,ygsm,zgsm,xgei,ygei,zgei)            |transforms_gsm_to_gei: GSM -> GEI  system |P. Robert, CRPE, 1992|
|subr|t_gsm_to_geo |(xgsm,ygsm,zgsm,xgeo,ygeo,zgeo)            |transforms_gsm_to_geo: GSM -> GEO  system |P. Robert, CRPE, 1992|
|subr|t_gsm_to_gse |(xgsm,ygsm,zgsm,xgse,ygse,zgse)            |transforms_gsm_to_gse: GSM -> GSE  system |P. Robert, CRPE, 1992|
|subr|t_gsm_to_gseq|(xgsm,ygsm,zgsm,xgsq,ygsq,zgsq)            |transforms_gsm_to_gsq: GSM -> GSQ  system |P. Robert, CRPE, 2002|
|subr|t_gsm_to_mag |(xgsm,ygsm,zgsm,xmag,ymag,zmag)            |transforms_gsm_to_mag: GSM -> MAG  system |P. Robert, CRPE, 2002|
|subr|t_gsm_to_sm  |(xgsm,ygsm,zgsm,xsma,ysma,zsma)            |transforms_gsm_to_sma: GSM -> SM   system |P. Robert, CRPE, 1992|
|subr|t_gsm_to_tpn |(xgsm,ygsm,zgsm,xo,yo,zo,xs,xtpn,ytpn,ztpn)|transforms_gsm_to_tpn: GSM -> TPN  system |P. Robert, LPP , 2016|
|subr|t_gseq_to_gei|(xgsq,ygsq,zgsq,xgei,ygei,zgei)            |transforms_gsq_to_gei: GSEQ-> GEI  system |P. Robert, CRPE, 1992|
|subr|t_gseq_to_geo|(xgsq,ygsq,zgsq,xgeo,ygeo,zgeo)            |transforms_gsq_to_geo: GSEQ-> GEO  system |P. Robert, CRPE, 1992|
|subr|t_gseq_to_gse|(xgsq,ygsq,zgsq,xgse,ygse,zgse)            |transforms_gsq_to_gse: GSEQ-> GSE  system |P. Robert, CRPE, 1992|
|subr|t_gseq_to_gsm|(xgsq,ygsq,zgsq,xgsm,ygsm,zgsm)            |transforms_gsq_to_gsm: GSQ -> GSM  system |P. Robert, CRPE, 2002|
|subr|t_mag_to_gei |(xmag,ymag,zmag,xgei,ygei,zgei)            |transforms_mag_to_gei: MAG -> GEI  system |P. Robert, CRPE, 1992|
|subr|t_mag_to_geo |(xmag,ymag,zmag,xgeo,ygeo,zgeo)            |transforms_mag_to_geo: MAG -> GEO  system |P. Robert, CRPE, 1992|
|subr|t_mag_to_gsm |(xmag,ymag,zmag,xgsm,ygsm,zgsm)            |transforms_mag_to_gsm: MAG -> GSM  system |P. Robert, CRPE, 2002|
|subr|t_mag_to_sm  |(xmag,ymag,zmag,xsma,ysma,zsma)            |transforms_mag_to_sma: MAG -> SM   system |P. Robert, CRPE, 1992|
|subr|t_sm_to_gei  |(xsma,ysma,zsma,xgei,ygei,zgei)            |transforms_sma_to_gei: SM  -> GEI  system |P. Robert, CRPE, 1992|
|subr|t_sm_to_geo  |(xsma,ysma,zsma,xgeo,ygeo,zgeo)            |transforms_sma_to_geo: SM  -> GEO  system |P. Robert, CRPE, 1992|
|subr|t_sm_to_gsm  |(xsma,ysma,zsma,xgsm,ygsm,zgsm)            |transforms_sma_to_gsm: SM  -> GSM  system |P. Robert, CRPE, 1992|
|subr|t_sm_to_mag  |(xsma,ysma,zsma,xmag,ymag,zmag)            |transforms_sma_to_mag: SM  -> MAG  system |P. Robert, CRPE, 1992|
|subr|t_sph_to_car |(r,teta,phi,x,y,z)                         |transforms_sph_to_car: SPH -> CAR  system |P. Robert, CRPE, 1992|
|subr|t_sr2_to_gse |(xsr2,ysr2,zsr2,rotx,roty,rotz,            |transforms_sr2_to_gse: SR2 -> GSE  system |P. Robert, CETP, 2001|
|subr|t_sr2_to_mfa |(xsr2,ysr2,zsr2,bx,by,bz,rox,roy,roz,      |transforms_sr2_to_mfa: SR2 -> MFA  system |P. Robert, CETP, 2001|
|subr|t_sr2_to_sr  |(xsr2,ysr2,spifre,spipha,deltaT,xsre,ysre) |transforms_sr2_to_sre: SR2 -> SRef system |P. Robert, CRPE, 2001|
|subr|t_sr_to_sr2  |(xsre,ysre,spifre,spipha,deltaT,xsr2,ysr2) |transforms_sre_to_sr2: SRef-> SR2 system  |P. Robert, CRPE, 2001|
|subr|t_vdh_to_geo |(xvdh,yvdh,zvdh,rlat,rlong,xgeo,ygeo,zgeo) |transforms_vdh_to_geo: VDH -> GEO  system |P. Robert, CRPE, 1992|
|subr|t_xyz_to_vdh |(x,y,z,a1,a2,a3,v,d,h)                     |transforms_xyz_to_vdh: xyz spinning -> VDH|P. Robert, SDev, 2020|
|subr|t_vdh_to_xyz |(v,d,h,a1,a2,a3,x,y,z)                     |transforms_vdh_to_xyz: VDH -> xyz spinning|P. Robert, SDev, 2020|
|____|_____________|___________________________________________|__________________________________________|_____________________|




print modules  (1)
 __________________________________________________________________________________
|    |                |           |                          |                     |
|type|module          |  arguments|  object                  |  author             |
|____|________________|___________|__________________________|_____________________|
|    |                |           |                          |                     |
|subr|print_rocot_info|           |print_library_informations|P. Robert, CRPE, 1992|
|____|________________|___________|__________________________|_____________________|





read modules   (4)
 ____________________________________________________________________________________________________________________
|    |                |                   |                                                    |                     |
|type|module          |  arguments        |  object                                            |  author             |
|____|________________|___________________|____________________________________________________|_____________________|
|    |                |                   |                                                    |                     |
|subr|r_coordinate_val|(x,y,z,cs)         |read coordinate values from input                   |P. Robert, CRPE, 2002|
|subr|r_coordinate_sys|(csys)             |read coordinate system from input and check validity|P. Robert, CRPE, 2002|
|subr|r_date          |(iyear,imonth,iday)|read_date from input and check validity             |P. Robert, CRPE, 1992|
|subr|r_time          |(ih,im,is)         |read_time from input and check validity             |P. Robert, CRPE, 1992|
|____|________________|___________________|____________________________________________________|_____________________|


compatibility with previous version V2.2   (85)
 ____________________________________________________________________
|    |                |                                              |
|type|module          |  arguments                                   |
|____|________________|______________________________________________|
|    |                |                                              |
|subr|cangrat         |(ux,uy,uz,vx,vy,vz,angle,ratio)               |
|subr|cdatdoy         |(idoy,iyear,imonth,iday)                      |
|subr|cdatj00         |(jd00,iyear,imonth,iday)                      |
|subr|cdatj50         |(jd50,iyear,imonth,iday)                      |
|subr|cdatwee         |(iweek,iyear,imonth,iday)                     |
|subr|cdipdir         |(iyear,idoy,d1,d2,d3)                         |
|subr|cdoweek         |(iyear,imonth,iday,idow)                      |
|subr|cdoyear         |(iyear,imonth,iday,idoy)                      |
|subr|cfrdayn         |(iday,cday,nbcha)                             |
|subr|cfrmonn         |(imonth,cmonth,nchar)                         |
|subr|chouday         |(ih,im,is,houday)                             |
|subr|cjd1950         |(iyear,imonth,iday,jd50)                      |
|subr|cjd2000         |(iyear,imonth,iday,jd00)                      |
|subr|cmilday         |(ih,im,is,ims,milday)                         |
|subr|cnbdmon         |(iyear,imonth,nbday)                          |
|subr|coleapy         |(iyear,ileap)                                 |
|subr|csundir         |(iyear,idoy,ih,im,is,gst,slong,sra,sdec,obliq)|
|subr|csunset         |(iyear,imon,iday,rlat,rlon,tmer,tris,tset,    |
|subr|ctimhou         |(houday,ih,im,is)                             |
|subr|ctimmil         |(milday,ih,im,is,ims)                         |
|subr|ctimpa2         |(jd1950,houday)                               |
|subr|ctimpa3         |(jd2000,houday)                               |
|subr|ctimpar         |(iyear,imonth,iday,ih,im,is)                  |
|subr|cusdayn         |(iday,cday,nbcha)                             |
|subr|cusmonn         |(imonth,cmonth,nchar)                         |
|subr|cweedoy         |(iyear,imonth,iday,iweek)                     |
|subr|gdipdir         |(dxgei,dygei,dzgei,dxgeo,dygeo,dzgeo)         |
|subr|gdiptan         |(diptan)                                      |
|subr|gecldir         |(exgei,eygei,ezgei,exgeo,eygeo,ezgeo)         |
|subr|gsrodir         |(rxgei,rygei,rzgei,rxgeo,rygeo,rzgeo)         |
|subr|gsundir         |(sxgei,sygei,szgei,sxgeo,sygeo,szgeo)         |
|subr|gsunpar         |(gmst,slon,sras,sdec,obli)                    |
|subr|gvernum         |(vernum,verdat)                               |
|subr|plibinf         |                                              |
|subr|recoor          |(x,y,z,cs)                                    |
|subr|recsys          |(csys)                                        |
|subr|redate          |(iyear,imonth,iday)                           |
|subr|retime          |(ih,im,is)                                    |
|subr|tcarsph         |(x,y,z,r,teta,phi)                            |
|subr|tdmegeo         |(xdme,ydme,zdme,rlat,rlong,xgeo,ygeo,zgeo)    |
|subr|tgeigeo         |(xgei,ygei,zgei,xgeo,ygeo,zgeo)               |
|____|________________|______________________________________________|


 ____________________________________________________________________
|    |                |                                              |
|type|module          |  arguments                                   |
|____|________________|_____________________________________________ |
|subr|tgeigse         |(xgei,ygei,zgei,xgse,ygse,zgse)               |
|subr|tgeigsm         |(xgei,ygei,zgei,xgsm,ygsm,zgsm)               |
|subr|tgeigsq         |(xgei,ygei,zgei,xgsq,ygsq,zgsq)               |
|subr|tgeimag         |(xgei,ygei,zgei,xmag,ymag,zmag)               |
|subr|tgeisma         |(xgei,ygei,zgei,xsma,ysma,zsma)               |
|subr|tgeodme         |(xgeo,ygeo,zgeo,rlat,rlong,xdme,ydme,zdme)    |
|subr|tgeogei         |(xgeo,ygeo,zgeo,xgei,ygei,zgei)               |
|subr|tgeogse         |(xgeo,ygeo,zgeo,xgse,ygse,zgse)               |
|subr|tgeogsm         |(xgeo,ygeo,zgeo,xgsm,ygsm,zgsm)               |
|subr|tgeogsq         |(xgeo,ygeo,zgeo,xgsq,ygsq,zgsq)               |
|subr|tgeomag         |(xgeo,ygeo,zgeo,xmag,ymag,zmag)               |
|subr|tgeosma         |(xgeo,ygeo,zgeo,xsma,ysma,zsma)               |
|subr|tgeovdh         |(xgeo,ygeo,zgeo,rlat,rlong,xvdh,yvdh,zvdh)    |
|subr|tgsegei         |(xgse,ygse,zgse,xgei,ygei,zgei)               |
|subr|tgsegeo         |(xgse,ygse,zgse,xgeo,ygeo,zgeo)               |
|subr|tgsegsm         |(xgse,ygse,zgse,xgsm,ygsm,zgsm)               |
|subr|tgsegsq         |(xgse,ygse,zgse,xgsq,ygsq,zgsq)               |
|subr|tgsesr2         |(xgse,ygse,zgse,rotx,roty,rotz,xsr2,ysr2,zsr2)|
|subr|tgsmgei         |(xgsm,ygsm,zgsm,xgei,ygei,zgei)               |
|subr|tgsmgeo         |(xgsm,ygsm,zgsm,xgeo,ygeo,zgeo)               |
|subr|tgsmgse         |(xgsm,ygsm,zgsm,xgse,ygse,zgse)               |
|subr|tgsmgsq         |(xgsm,ygsm,zgsm,xgsq,ygsq,zgsq)               |
|subr|tgsmmag         |(xgsm,ygsm,zgsm,xmag,ymag,zmag)               |
|subr|tgsmsma         |(xgsm,ygsm,zgsm,xsma,ysma,zsma)               |
|subr|tgsqgei         |(xgsq,ygsq,zgsq,xgei,ygei,zgei)               |
|subr|tgsqgeo         |(xgsq,ygsq,zgsq,xgeo,ygeo,zgeo)               |
|subr|tgsqgse         |(xgsq,ygsq,zgsq,xgse,ygse,zgse)               |
|subr|tgsqgsm         |(xgsq,ygsq,zgsq,xgsm,ygsm,zgsm)               |
|subr|tmaggei         |(xmag,ymag,zmag,xgei,ygei,zgei)               |
|subr|tmaggeo         |(xmag,ymag,zmag,xgeo,ygeo,zgeo)               |
|subr|tmaggsm         |(xmag,ymag,zmag,xgsm,ygsm,zgsm)               |
|subr|tmagsma         |(xmag,ymag,zmag,xsma,ysma,zsma)               |
|subr|tsmagei         |(xsma,ysma,zsma,xgei,ygei,zgei)               |
|subr|tsmageo         |(xsma,ysma,zsma,xgeo,ygeo,zgeo)               |
|subr|tsmagsm         |(xsma,ysma,zsma,xgsm,ygsm,zgsm)               |
|subr|tsmamag         |(xsma,ysma,zsma,xmag,ymag,zmag)               |
|subr|tsphcar         |(r,teta,phi,x,y,z)                            |
|subr|tsr2gse         |(xsr2,ysr2,zsr2,rotx,roty,rotz,xgse,ygse,zgse)|
|subr|tsr2mfa         |(xsr2,ysr2,zsr2,bx,by,bz,rox,roy,roz,xm,ym,zm)|
|subr|tsr2sre         |(xsr2,ysr2,spifre,spipha,deltaT,xsre,ysre)    |
|subr|tsresr2         |(xsre,ysre,spifre,spipha,deltaT,xsr2,ysr2)    |
|subr|tvdhgeo         |(xvdh,yvdh,zvdh,rlat,rlong,xgeo,ygeo,zgeo)    |
|func|modulo          |(a,p)                                         |
|____|________________|______________________________________________|