My Project
Public Member Functions | List of all members
mod_time::operator(*) Interface Reference

Public Member Functions

type(time) function time_x_int (MJD, int)
 
type(time) function time_x_long (MJD, long)
 
type(time) function time_x_flt (MJD, flt)
 
type(time) recursive function time_x_dbl (MJD, dbl)
 
type(time) function int_x_time (int, MJD)
 
type(time) function long_x_time (long, MJD)
 
type(time) function flt_x_time (flt, MJD)
 
type(time) function dbl_x_time (dbl, MJD)
 

Detailed Description

Definition at line 77 of file mod_time.f90.

Member Function/Subroutine Documentation

◆ dbl_x_time()

type(time) function mod_time::operator(*)::dbl_x_time ( real(dp), intent(in)  dbl,
type(time), intent(in)  MJD 
)

Definition at line 853 of file mod_time.f90.

853  IMPLICIT NONE
854  TYPE(TIME), INTENT(IN) :: MJD
855  real(DP), INTENT(in) :: dbl
856 
857  dbl_x_time = mjd * dbl
858 
type(time) function dbl_x_time(dbl, MJD)
Definition: mod_time.f90:853

◆ flt_x_time()

type(time) function mod_time::operator(*)::flt_x_time ( real(spa), intent(in)  flt,
type(time), intent(in)  MJD 
)

Definition at line 841 of file mod_time.f90.

841  IMPLICIT NONE
842  TYPE(TIME), INTENT(IN) :: MJD
843  real(SPA), INTENT(in) :: flt
844  real(DP) :: dbl
845 
846  dbl = dble(flt)
847 ! if(DBG_SET(dbg_log)) print*,'dbl=',dbl
848  flt_x_time = mjd * dbl
849 
type(time) function flt_x_time(flt, MJD)
Definition: mod_time.f90:841

◆ int_x_time()

type(time) function mod_time::operator(*)::int_x_time ( integer, intent(in)  int,
type(time), intent(in)  MJD 
)

Definition at line 758 of file mod_time.f90.

758  IMPLICIT NONE
759  TYPE(TIME), INTENT(IN) :: MJD
760  integer, INTENT(IN) :: int
761 
762  int_x_time%MuSOD=mjd%MuSOD * int
763  int_x_time%mjd=mjd%mjd * int
764 
765 
766  call adjust(int_x_time)
subroutine adjust(MJD)
Definition: mod_time.f90:377
type(time) function int_x_time(int, MJD)
Definition: mod_time.f90:758

◆ long_x_time()

type(time) function mod_time::operator(*)::long_x_time ( integer(itime), intent(in)  long,
type(time), intent(in)  MJD 
)

Definition at line 770 of file mod_time.f90.

770  IMPLICIT NONE
771  TYPE(TIME), INTENT(IN) :: MJD
772  integer(itime), INTENT(IN) :: long
773 
774  long_x_time%MuSOD=mjd%MuSOD * long
775  long_x_time%mjd=mjd%mjd * long
776 
777 
778  call adjust(long_x_time)
subroutine adjust(MJD)
Definition: mod_time.f90:377
type(time) function long_x_time(long, MJD)
Definition: mod_time.f90:770

◆ time_x_dbl()

type(time) recursive function mod_time::operator(*)::time_x_dbl ( type(time), intent(in)  MJD,
real(dp), intent(in)  dbl 
)

Definition at line 816 of file mod_time.f90.

816  IMPLICIT NONE
817  TYPE(TIME), INTENT(IN) :: MJD
818  real(DP), INTENT(in) :: dbl
819  integer(itime) :: int
820  real(DP) :: remainder
821  real(DP) :: temp
822 
823  if (abs(dbl) .gt. 1.0_dp) THEN
824  int = anint(dbl,itime)
825  remainder = dbl - int
826  time_x_dbl = (mjd * int) + (mjd * remainder)
827  else
828  temp = real(mjd%MuSOD,dp) * real(dbl,dp)
829  time_x_dbl%MuSOD= anint(temp,itime)
830 
831  temp = real(mjd%mjd,dp) * real(dbl,dp)
832  int = anint(temp,itime)
833  time_x_dbl%mjd=int
834  time_x_dbl%MuSOD = time_x_dbl%MuSOD + (temp-int)*muspd
835  end if
836  call adjust(time_x_dbl)
837 
subroutine adjust(MJD)
Definition: mod_time.f90:377
integer(itime), parameter muspd
Definition: mod_time.f90:159
type(time) recursive function time_x_dbl(MJD, dbl)
Definition: mod_time.f90:816
integer, parameter dp
Definition: mod_prec.f90:52
integer, parameter itime
Definition: mod_time.f90:48

◆ time_x_flt()

type(time) function mod_time::operator(*)::time_x_flt ( type(time), intent(in)  MJD,
real(spa), intent(in)  flt 
)

Definition at line 805 of file mod_time.f90.

805  IMPLICIT NONE
806  TYPE(TIME), INTENT(IN) :: MJD
807  real(SPA), INTENT(in) :: flt
808  real(DP) :: DBL
809 
810  dbl = flt
811  time_x_flt = mjd * dbl
812 
type(time) function time_x_flt(MJD, flt)
Definition: mod_time.f90:805

◆ time_x_int()

type(time) function mod_time::operator(*)::time_x_int ( type(time), intent(in)  MJD,
integer, intent(in)  int 
)

Definition at line 782 of file mod_time.f90.

782  IMPLICIT NONE
783  TYPE(TIME), INTENT(IN) :: MJD
784  integer, INTENT(IN) :: int
785 
786  time_x_int%MuSOD=mjd%MuSOD * int
787  time_x_int%mjd=mjd%mjd * int
788 
789 
790  call adjust(time_x_int)
subroutine adjust(MJD)
Definition: mod_time.f90:377
type(time) function time_x_int(MJD, int)
Definition: mod_time.f90:782

◆ time_x_long()

type(time) function mod_time::operator(*)::time_x_long ( type(time), intent(in)  MJD,
integer(itime), intent(in)  long 
)

Definition at line 794 of file mod_time.f90.

794  IMPLICIT NONE
795  TYPE(TIME), INTENT(IN) :: MJD
796  integer(itime), INTENT(IN) :: long
797 
798  time_x_long%MuSOD=mjd%MuSOD * long
799  time_x_long%mjd=mjd%mjd * long
800 
801  call adjust(time_x_long)
subroutine adjust(MJD)
Definition: mod_time.f90:377
type(time) function time_x_long(MJD, long)
Definition: mod_time.f90:794

The documentation for this interface was generated from the following file: