---
# When calling > python simulation.py filename.yml --output_folder
# the simulation will use the default parameters here unless specified
name: default

simulation:
  dt: 0.001 #timestep of the simulation
  tmax: 15 #total runtime of the simulation
  soft: 0.1 #plummer softening characteristic length
  saveEvery: 100 #the state of the simulation is saved every saveEvery steps
  method: bruteForce #method for computing gravitational forces
  # One of 'bruteForce', 'bruteForceNumba',
  # bruteForceNumbaOptimized', 'bruteForceCPP', 'barnesHutCPP'.

orbit:
  e: 1 #eccentricity
  rmin: 1 #separation at pericenter
  R0: 4 #separation at t=0

galaxy1:
  orientation: [0, 0] #[theta, phi] in degrees
  # These are related to i, $\omega$ through theta = i + 180 and $\omega$ = phi
  centralMass: 1 #mass of the central point object
  bulge:
    model: plummer #alternatively: hernquist
    totalMass: 0
    particles: 0 #number of particles
    l: .04 #characteristic length scale both for plummer and Hernquist models
  disk:
    model: uniform #alternatively: rings, exp
    totalMass: 0
    particles: 2000 #number of particles
    l: 0.8 #for uniform: single number for maximum radius
    #l: [0., .7, 100] #for rings: [closest ring, furthest ring, number of rings]
    #l: .2 #for exp: characteristic decay length
  halo:
    model: NFW #Navarro-Frenk-White profile only
    totalMass: 0
    particles: 0 #number of particles
    rs: 1 #characteristic length scale of NFW. Cutoff is 5*rs

# The same options are available for the second galaxy
galaxy2:
  orientation: [0, 0]
  centralMass: 1
  bulge:
    model: plummer
    totalMass: 0
    particles: 0
    l: .04
  disk: 
    model: uniform
    totalMass: 0
    particles: 0 #the second galaxy does not possess a ring by default
    l: 0.7
  halo:
    model: NFW
    totalMass: 0
    particles: 0
    rs: 1
