| Module | Source File | Description |
|---|---|---|
| base | base_module.f90 | Base type definitions. This allows the collision and encounter modules to be defined before the swiftest module. |
| bindings_module | bindings_module.f90 | |
| coarray | coarray_module.f90 | Utilities that are used for coarray test particles |
| s_coarray_clone | coarray_clone.f90 | |
| s_coarray_collect | coarray_collect.f90 | |
| collision | collision_module.f90 | Definition of classes and methods used to determine close encounters NetCDF dimension and variable names for the enounter save object |
| s_collision_generate | collision_generate.f90 | |
| s_collision_io | collision_io.f90 | |
| s_collision_regime | collision_regime.f90 | |
| s_collision_util | collision_util.f90 | |
| s_collision_check | collision_check.f90 | |
| s_collision_resolve | collision_resolve.f90 | |
| encounter | encounter_module.f90 | Definition of classes and methods used to determine close encounters |
| s_encounter_check | encounter_check.f90 | |
| s_encounter_io | encounter_io.f90 | |
| s_encounter_util | encounter_util.f90 | |
| fraggle | fraggle_module.f90 | Definition of classes and methods specific to Fraggle: Fragment generation that conserves angular momentum (L) and energy (E) |
| s_fraggle_util | fraggle_util.f90 | |
| s_fraggle_generate | fraggle_generate.f90 | |
| helio | helio_module.f90 | Definition of classes and methods specific to the Democratic Heliocentric Method Adapted from David E. Kaufmann’s Swifter routine: module_helio.f90 |
| s_helio_drift | helio_drift.f90 | |
| s_helio_gr | helio_gr.f90 | |
| s_helio_kick | helio_kick.f90 | |
| s_helio_step | helio_step.f90 | |
| s_helio_util | helio_util.f90 | |
| io_progress_bar | io_progress_bar_module.f90 | Definition of classes and methods used to determine close encounters |
| lambda_function | lambda_function_module.f90 | Defines a class that can enable objects that behave like lambda functions. |
| netcdf_io | netcdf_io_module.f90 | Base type definitions. This allows the collision and encounter modules to be defined before the swiftest module. This derived datatype stores the NetCDF ID values for each of the variables included in the NetCDF data file. This is used as the base class defined in base |
| s_netcdf_io_implementations | netcdf_io_implementations.f90 | |
| operators | operator_module.f90 | Custom operators, including A .cross. B = Cross product of A(1:NDIM) and B(1:NDIM) |
| s_operator_mag | operator_mag.f90 | Contains implementations for the .mag. operator for all defined real types Computes the magnitude of a vector or array of vectors using norm2 Single vector implementations: B = .mag. A(1:3) Vector list implementations: B(:) = .mag. A(1:3, :) |
| s_operator_unit | operator_unit.f90 | Contains implementations for the .unit. operator for all defined real types Returns a unit vector or array of unit vectors from an input vector or array of vectors Single vector implementations: B = .unit. A(1:NDIM) Vector list implementations: B(:) = .unit. A(1:NDIM, :) |
| s_operator_cross | operator_cross.f90 | Contains implementations for the .cross. operator for all defined integer and real types Computes the cross product of two (3) vectors or (3,:) arrays Single vector implementations: C(1:3) = A(1:3) .cross. B(1:3) Vector list implementations: C(1:3, :) = A(1:3, :) .cross. B(1:3, :) |
| rmvs | rmvs_module.f90 | Definition of classes and methods specific to the Regularized Mixed Variable Symplectic (INT_RMVS) integrator Partially adapted from David E. Kaufmann’s Swifter module: module_rmvs.f90 RMVS test particle class |
| s_rmvs_discard | rmvs_discard.f90 | |
| s_rmvs_encounter_check | rmvs_encounter_check.f90 | |
| s_rmvs_kick | rmvs_kick.f90 | |
| s_rmvs_step | rmvs_step.f90 | |
| s_rmvs_util | rmvs_util.f90 | |
| shgrav | shgrav_module.f90 | This module defines functions used for the computation of accelerations based on spherical harmonics representation of the gravitational potential of the central body. It uses the SHTOOLS library https://shtools.github.io/SHTOOLS/ |
| s_shgrav_accel | shgrav_accel.f90 | |
| s_shgrav_pot | shgrav_pot.f90 | |
| solver | solver_module.f90 | Contains a 4th order Runge-Kutta-Fehlberg ODE solver and a linear system of equations solver |
| swiftest | swiftest_module.f90 | This module serves to combine all of the Swiftest project modules under a single umbrella so that they can be accessed from individual submodule implementations with a simple “use swiftest” line. |
| s_swiftest_discard | swiftest_discard.f90 | |
| s_swiftest_drift | swiftest_drift.f90 | |
| s_swiftest_driver | swiftest_driver.f90 | |
| s_swiftest_gr | swiftest_gr.f90 | |
| s_swiftest_kick | swiftest_kick.f90 | |
| s_swiftest_orbel | swiftest_orbel.f90 | Code converted to Modern Fortran by David A. Minton Date: 2020-06-29 |
| s_swiftest_user | swiftest_user.f90 | |
| s_swiftest_obl | swiftest_obl.f90 | |
| s_swiftest_coarray | swiftest_coarray.f90 | |
| s_swiftest_io | swiftest_io.f90 | |
| s_swiftest_util | swiftest_util.f90 | |
| symba | symba_module.f90 | Definition of classes and methods specific to the SyMBA integrator Adapted from David E. Kaufmann’s Swifter routine: module_symba.f90 |
| s_symba_discard | symba_discard.f90 | |
| s_symba_drift | symba_drift.f90 | |
| s_symba_encounter_check | symba_encounter_check.f90 | |
| s_symba_gr | symba_gr.f90 | |
| s_symba_kick | symba_kick.f90 | |
| s_symba_step | symba_step.f90 | |
| s_symba_util | symba_util.f90 | |
| tides | tides_module.f90 | Definition of classes and methods used to determine close encounters |
| s_tides_kick_getacch | tides_getacch_pl.f90 | |
| s_tides_step_rot | tides_spin_step.f90 | |
| walltime | walltime_module.f90 | Classes and methods used to compute elasped wall time |
| s_walltime | walltime_implementations.f90 | |
| whm | whm_module.f90 | Definition of classes and methods specific to the Democratic Heliocentric Method Partially adapted from David E. Kaufmann’s Swifter module: module_whm.f90 |
| s_whm_coord | whm_coord.f90 | |
| s_whm_gr | whm_gr.f90 | |
| s_whm_kick | whm_kick.f90 | |
| s_whm_step | whm_step.f90 | |
| s_whm_util | whm_util.f90 | |
| whm_drift | whm_drift.f90 |