Custom operators, including
A .cross. B = Cross product of A(1:NDIM) and B(1:NDIM)
Each operator can also do element-wise computation on arrays of the form .mag. A(1:NDIM, 1:n)
Interfaces for .cross. operator: Computes the cross product of two (NDIM) vectors or (NDIM,:) arrays
Interfaces for .mag. operator: Computes the magnitude of a vector or array of vectors using norm2
Interfaces for .unit. operator: Returns a unit vector or array of unit vectors from an input vector or array of vectors
Uses
module~~operators~~UsesGraph
module~operators
operators
globals
globals
module~operators->globals
Nodes of different colours represent the following:
Graph Key
Module
Module
Submodule
Submodule
Subroutine
Subroutine
Function
Function
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a submodule to the (sub)module which it is
descended from. Dashed arrows point from a module or program unit to
modules which it uses.
Used by
module~~operators~~UsedByGraph
module~operators
operators
module~swiftest
swiftest
module~swiftest->module~operators
module~s_operator_unit
s_operator_unit
module~s_operator_unit->module~operators
module~s_operator_cross
s_operator_cross
module~s_operator_cross->module~operators
module~s_operator_cross->module~swiftest
module~s_operator_mag
s_operator_mag
module~s_operator_mag->module~operators
module~s_swiftest_orbel
s_swiftest_orbel
module~s_swiftest_orbel->module~swiftest
module~s_helio_kick
s_helio_kick
module~s_helio_kick->module~swiftest
module~helio
helio
module~s_helio_kick->module~helio
module~s_fraggle_generate
s_fraggle_generate
module~s_fraggle_generate->module~swiftest
module~fraggle
fraggle
module~s_fraggle_generate->module~fraggle
module~symba
symba
module~s_fraggle_generate->module~symba
module~s_symba_gr
s_symba_gr
module~s_symba_gr->module~swiftest
module~s_symba_gr->module~symba
module~s_tides_step_rot
s_tides_step_rot
module~s_tides_step_rot->module~swiftest
module~fraggle->module~swiftest
module~symba->module~swiftest
module~symba->module~helio
module~shgrav
shgrav
module~shgrav->module~swiftest
module~whm
whm
module~whm->module~swiftest
module~rmvs
rmvs
module~rmvs->module~swiftest
module~rmvs->module~whm
module~s_collision_util
s_collision_util
module~s_collision_util->module~swiftest
module~s_symba_step
s_symba_step
module~s_symba_step->module~swiftest
module~s_symba_step->module~symba
module~s_swiftest_user
s_swiftest_user
module~s_swiftest_user->module~swiftest
module~s_symba_util
s_symba_util
module~s_symba_util->module~swiftest
module~s_symba_util->module~fraggle
module~s_symba_util->module~symba
module~s_rmvs_encounter_check
s_rmvs_encounter_check
module~s_rmvs_encounter_check->module~swiftest
module~s_rmvs_encounter_check->module~rmvs
module~s_coarray_collect
s_coarray_collect
module~s_coarray_collect->module~swiftest
module~s_swiftest_gr
s_swiftest_gr
module~s_swiftest_gr->module~swiftest
module~s_swiftest_io
s_swiftest_io
module~s_swiftest_io->module~swiftest
module~s_swiftest_io->module~symba
module~s_fraggle_util
s_fraggle_util
module~s_fraggle_util->module~swiftest
module~s_fraggle_util->module~fraggle
module~s_symba_kick
s_symba_kick
module~s_symba_kick->module~swiftest
module~s_symba_kick->module~symba
module~s_swiftest_discard
s_swiftest_discard
module~s_swiftest_discard->module~swiftest
module~s_symba_encounter_check
s_symba_encounter_check
module~s_symba_encounter_check->module~swiftest
module~s_symba_encounter_check->module~symba
module~s_symba_drift
s_symba_drift
module~s_symba_drift->module~swiftest
module~s_symba_drift->module~symba
module~s_swiftest_drift
s_swiftest_drift
module~s_swiftest_drift->module~swiftest
module~bindings_module
bindings_module
module~bindings_module->module~swiftest
module~s_collision_regime
s_collision_regime
module~s_collision_regime->module~swiftest
module~s_swiftest_coarray
s_swiftest_coarray
module~s_swiftest_coarray->module~swiftest
module~s_rmvs_step
s_rmvs_step
module~s_rmvs_step->module~swiftest
module~s_rmvs_step->module~rmvs
module~s_rmvs_discard
s_rmvs_discard
module~s_rmvs_discard->module~swiftest
module~s_rmvs_discard->module~rmvs
module~s_swiftest_driver
s_swiftest_driver
module~s_swiftest_driver->module~swiftest
module~s_shgrav_accel
s_shgrav_accel
module~s_shgrav_accel->module~swiftest
module~s_shgrav_accel->module~shgrav
module~s_encounter_util
s_encounter_util
module~s_encounter_util->module~swiftest
module~s_swiftest_obl
s_swiftest_obl
module~s_swiftest_obl->module~swiftest
module~s_swiftest_obl->module~shgrav
module~s_shgrav_pot
s_shgrav_pot
module~s_shgrav_pot->module~swiftest
module~s_shgrav_pot->module~shgrav
module~s_rmvs_kick
s_rmvs_kick
module~s_rmvs_kick->module~swiftest
module~s_rmvs_kick->module~rmvs
program~main
main
program~main->module~swiftest
module~s_helio_gr
s_helio_gr
module~s_helio_gr->module~swiftest
module~s_helio_gr->module~helio
module~s_helio_util
s_helio_util
module~s_helio_util->module~swiftest
module~s_helio_util->module~helio
module~s_walltime
s_walltime
module~s_walltime->module~swiftest
module~s_rmvs_util
s_rmvs_util
module~s_rmvs_util->module~swiftest
module~s_rmvs_util->module~rmvs
module~s_helio_step
s_helio_step
module~s_helio_step->module~swiftest
module~s_helio_step->module~helio
module~s_collision_check
s_collision_check
module~s_collision_check->module~swiftest
module~s_collision_check->module~symba
module~helio->module~swiftest
module~helio->module~whm
module~s_symba_discard
s_symba_discard
module~s_symba_discard->module~swiftest
module~s_symba_discard->module~symba
module~s_whm_coord
s_whm_coord
module~s_whm_coord->module~swiftest
module~s_whm_coord->module~whm
module~s_whm_gr
s_whm_gr
module~s_whm_gr->module~swiftest
module~s_whm_gr->module~whm
module~s_encounter_io
s_encounter_io
module~s_encounter_io->module~swiftest
module~s_coarray_clone
s_coarray_clone
module~s_coarray_clone->module~swiftest
module~whm_drift
whm_drift
module~whm_drift->module~swiftest
module~whm_drift->module~whm
module~s_whm_util
s_whm_util
module~s_whm_util->module~swiftest
module~s_whm_util->module~whm
module~s_whm_step
s_whm_step
module~s_whm_step->module~swiftest
module~s_whm_step->module~whm
module~s_swiftest_util
s_swiftest_util
module~s_swiftest_util->module~swiftest
module~s_swiftest_util->module~fraggle
module~s_swiftest_util->module~symba
module~s_swiftest_util->module~whm
module~s_swiftest_util->module~rmvs
module~s_swiftest_util->module~helio
module~s_helio_drift
s_helio_drift
module~s_helio_drift->module~swiftest
module~s_helio_drift->module~helio
module~s_swiftest_kick
s_swiftest_kick
module~s_swiftest_kick->module~swiftest
module~s_encounter_check
s_encounter_check
module~s_encounter_check->module~swiftest
module~s_whm_kick
s_whm_kick
module~s_whm_kick->module~swiftest
module~s_whm_kick->module~whm
module~s_collision_generate
s_collision_generate
module~s_collision_generate->module~swiftest
module~s_collision_io
s_collision_io
module~s_collision_io->module~swiftest
module~s_collision_resolve
s_collision_resolve
module~s_collision_resolve->module~swiftest
module~s_tides_kick_getacch
s_tides_kick_getacch
module~s_tides_kick_getacch->module~swiftest
Nodes of different colours represent the following:
Graph Key
Module
Module
Submodule
Submodule
Subroutine
Subroutine
Function
Function
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a submodule to the (sub)module which it is
descended from. Dashed arrows point from a module or program unit to
modules which it uses.
Interfaces
public pure module function operator_cross_dp(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
real(kind=DP),
intent(in),
dimension(:) ::
A
real(kind=DP),
intent(in),
dimension(:) ::
B
Return Value real(kind=DP),dimension(NDIM)
public pure module function operator_cross_el_dp(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
real(kind=DP),
intent(in),
dimension(:,:) ::
A
real(kind=DP),
intent(in),
dimension(:,:) ::
B
Return Value real(kind=DP),dimension(:,:), allocatable
public pure module function operator_cross_el_i1b(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
integer(kind=I1B),
intent(in),
dimension(:,:) ::
A
integer(kind=I1B),
intent(in),
dimension(:,:) ::
B
Return Value integer(kind=I1B),dimension(:,:), allocatable
public pure module function operator_cross_el_i2b(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
integer(kind=I2B),
intent(in),
dimension(:,:) ::
A
integer(kind=I2B),
intent(in),
dimension(:,:) ::
B
Return Value integer(kind=I2B),dimension(:,:), allocatable
public pure module function operator_cross_el_i4b(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
integer(kind=I4B),
intent(in),
dimension(:,:) ::
A
integer(kind=I4B),
intent(in),
dimension(:,:) ::
B
Return Value integer(kind=I4B),dimension(:,:), allocatable
public pure module function operator_cross_el_i8b(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
integer(kind=I8B),
intent(in),
dimension(:,:) ::
A
integer(kind=I8B),
intent(in),
dimension(:,:) ::
B
Return Value integer(kind=I8B),dimension(:,:), allocatable
public pure module function operator_cross_el_qp(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
real(kind=QP),
intent(in),
dimension(:,:) ::
A
real(kind=QP),
intent(in),
dimension(:,:) ::
B
Return Value real(kind=QP),dimension(:,:), allocatable
public pure module function operator_cross_el_sp(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
real(kind=SP),
intent(in),
dimension(:,:) ::
A
real(kind=SP),
intent(in),
dimension(:,:) ::
B
Return Value real(kind=SP),dimension(:,:), allocatable
public pure module function operator_cross_i1b(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
integer(kind=I1B),
intent(in),
dimension(:) ::
A
integer(kind=I1B),
intent(in),
dimension(:) ::
B
Return Value integer(kind=I1B),dimension(NDIM)
public pure module function operator_cross_i2b(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
integer(kind=I2B),
intent(in),
dimension(:) ::
A
integer(kind=I2B),
intent(in),
dimension(:) ::
B
Return Value integer(kind=I2B),dimension(NDIM)
public pure module function operator_cross_i4b(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
integer(kind=I4B),
intent(in),
dimension(:) ::
A
integer(kind=I4B),
intent(in),
dimension(:) ::
B
Return Value integer(kind=I4B),dimension(NDIM)
public pure module function operator_cross_i8b(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
integer(kind=I8B),
intent(in),
dimension(:) ::
A
integer(kind=I8B),
intent(in),
dimension(:) ::
B
Return Value integer(kind=I8B),dimension(NDIM)
public pure module function operator_cross_qp(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
real(kind=QP),
intent(in),
dimension(:) ::
A
real(kind=QP),
intent(in),
dimension(:) ::
B
Return Value real(kind=QP),dimension(NDIM)
public pure module function operator_cross_sp(A, B) result(C)
Arguments
Type Intent Optional Attributes Name
real(kind=SP),
intent(in),
dimension(:) ::
A
real(kind=SP),
intent(in),
dimension(:) ::
B
Return Value real(kind=SP),dimension(NDIM)
public pure module function operator_mag_dp(A) result(B)
Arguments
Type Intent Optional Attributes Name
real(kind=DP),
intent(in),
dimension(:) ::
A
Return Value real(kind=DP)
public pure module function operator_mag_el_dp(A) result(B)
Arguments
Type Intent Optional Attributes Name
real(kind=DP),
intent(in),
dimension(:,:) ::
A
Return Value real(kind=DP),dimension(:), allocatable
public pure module function operator_mag_el_qp(A) result(B)
Arguments
Type Intent Optional Attributes Name
real(kind=QP),
intent(in),
dimension(:,:) ::
A
Return Value real(kind=QP),dimension(:), allocatable
public pure module function operator_mag_el_sp(A) result(B)
Arguments
Type Intent Optional Attributes Name
real(kind=SP),
intent(in),
dimension(:,:) ::
A
Return Value real(kind=SP),dimension(:), allocatable
public pure module function operator_mag_qp(A) result(B)
Arguments
Type Intent Optional Attributes Name
real(kind=QP),
intent(in),
dimension(:) ::
A
Return Value real(kind=QP)
public pure module function operator_mag_sp(A) result(B)
Arguments
Type Intent Optional Attributes Name
real(kind=SP),
intent(in),
dimension(:) ::
A
Return Value real(kind=SP)
public pure module function operator_unit_dp(A) result(B)
Arguments
Type Intent Optional Attributes Name
real(kind=DP),
intent(in),
dimension(:) ::
A
Return Value real(kind=DP),dimension(NDIM)
public pure module function operator_unit_el_dp(A) result(B)
Arguments
Type Intent Optional Attributes Name
real(kind=DP),
intent(in),
dimension(:,:) ::
A
Return Value real(kind=DP),dimension(:,:), allocatable
public pure module function operator_unit_el_qp(A) result(B)
Arguments
Type Intent Optional Attributes Name
real(kind=QP),
intent(in),
dimension(:,:) ::
A
Return Value real(kind=QP),dimension(:,:), allocatable
public pure module function operator_unit_el_sp(A) result(B)
Arguments
Type Intent Optional Attributes Name
real(kind=SP),
intent(in),
dimension(:,:) ::
A
Return Value real(kind=SP),dimension(:,:), allocatable
public pure module function operator_unit_qp(A) result(B)
Arguments
Type Intent Optional Attributes Name
real(kind=QP),
intent(in),
dimension(:) ::
A
Return Value real(kind=QP),dimension(NDIM)
public pure module function operator_unit_sp(A) result(B)
Arguments
Type Intent Optional Attributes Name
real(kind=SP),
intent(in),
dimension(:) ::
A
Return Value real(kind=SP),dimension(NDIM)