Skip to content

ccapo/symba-gas-omp

Repository files navigation

This is a numerical integrator used to accurately compute the orbits
of celestial bodies using the SyMBA algorithm. The code computes the
mutual gravity between M large massive bodies and N small massive bodies,
but does not compute the mutual gravity between the N small massive bodies.

This code also includes a prescription for aerodynamic gas drag for small
bodies, and tidal torques for the large bodies assuming the presence of a
circumstellar gaseous disk.

This code has also been parallelized using OpenMP directives, but is only
designed to handle scenarios where M < 1000.

This code requires the following to be installed: 
Intel Fortran compiler v13+ or GNU Fortran compiler v4.8+
GNU C compiler (Optional, for fxdr binary output library)
gnuplot (Optional)
ImageMagick (Optional)
ps2pdf (Optional)
ffmpeg (Optional)

=============================================================================

Before compiling:

- Update the value of SWIFT_HOME in Makefile.Defines with the correct location of this directory
- Ensure the file test_read_only.xdr in the fxdr directory has read-only permissions
- Set the stack size to be unlimited:
  ulimit -s unlimited
- It may be necessary to provide a larger OpenMP stack size:
  export OMP_STACKSIZE=256m

=============================================================================

To compile:

- make all

To run the example:

- cd example; ./@run_sim
- If gnuplot, ImageMagick or ffmpeg are not installed, then comment out the line with containing frame_symba

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published