Skip to main content

Package for generating initial conditions for AREPO

Project description

PyPI package version number

arepoICgen

Package for creating Initial Conditions for the AMR code AREPO1 for simulations of molecular clouds intended for scientific research. Many parts of this code are adapted from a FORTRAN code developed by Paul Clark called setpartarepo.

This code is available via a direct clone of this repository, or through pip: pip install arepoICgen

Usage Guide

arepoICgen takes in two python dictionaries as inputs, config and params. Config provides the code information about the geometry and metadata of the cloud, while params supplies the physical parameters of the cloud. Some config and param flags are required, and others are optional. Required flags will be marked with a "*". The default option assumed if not specified is marked in bold. Some parameters have default assumed values if not specified, marked in bold brackets ().

Config
Flag Options Description Associated Params
verbose True, False Whether to print extended feedback as the code runs (does not affect the ICs)
grid* boxGrid, boxRan, sphereGrid, sphereRan, ellipseRan, cylinderRan The geometry and particle distribution (gridded or random). lengths, radii (for sphere types)
turbulence static, turbFile Whether to apply to turbulent velocity field from a file virialParam
turbFile path_to_file The path to a turbulent velocity grid file, needed only for turbFile
turbSize 128, integer The size of the velocity grid (assumed equal length cubic), needed only for turbFile
rotation none, rotation Whether to add rotation to the cloud beta, rotationRadius
extras none, bossBodenheimer, densityGradient, bonnorEbert What density perturbation to add to the cloud, either Boss Bodenheimer2, a linear density gradient3 or a Bonnor-Ebert4 density profile (note this setting automatically outputs density as mass)
padBox False, True Whether to pad the cloud with low density particles tempFactor, boxDims, paddingDensity, paddingPercent
bField False, True Whether we need to give the particles an inital magnetic field value (note this does not do anything besides gives particles an initial B field of 0)
outValue masses, density Option to output the mass field as density (note this needs AREPO to be compiled with the right config flag for this) density
filename* "..." Name of the IC file (note that the file extension is not needed)
Params

Note that lengths and radii are both marked as required, but only one may be needed in some cases.

Flag Format/Units Description Associated Config
ngas* Number of particles to populate the cloud with
lengths* [xLength, yLength, zLength] $\rm [cm]$ The length of the box or ellipse in each direction (for the cylinder, xLength is taken as the length of the cylinder) grid
radii* Radius $\rm [cm]$ The radius of a spherical cloud, or the radius of the face of a cylinder (not needed by box or elliptical setups) grid
mass* $\rm [M_\odot]$ The total mass of the cloud
temp* $\rm [K]$, (20) The inital temperature of the gas inside the cloud
mu* $\mu$, (1.4) The mean molecular weight of the gas in the cloud, typically 1.4 for atomic and 2.4 for molecular
virialParam $\alpha = \rm\frac{E_{Kin}}{E_{Grav}}$, (2) The virial parameter of the cloud, used for scaling turbulent velocities turbulence
beta $\beta = \rm \frac{E_{Rot}}{E_{Grav}}$, (0.01) The ratio between rotational and gravitational energy rotation
rotationRadius AU (0) The radius outside of which to add rotation. Allows no angular momentum in the centre of the cloud so that numerical rings do not form rotation
boxSize [x, y, z], ([2,2,2]) The factor by which the box should be larger than the cloud in each dimension (i.e 2x, 3x, 4x the size) padBox
tempFactor (2) How much hotter to make the padding particles compared to the cloud particles padBox
paddingDensity (0.01) What fraction of the cloud's density should the padding region be (ignored for Bonnor-Ebert profile, padding density set to match outer BE sphere density) padBox
paddingPercent (0.02) Number of cells to pad the box with, as a percent of ngas. padBox
uMass $1.991\times10^{33} , \rm g$ Mass code unit *
uDist $1\times10^{17} , \rm cm$ Distance code unit *
uVelo $36447.2682 , \rm cm , s^{-1}$ Velocity code unit *
uEner $1.328\times10^{9} , \rm erg$ Energy code unit *

Calling generateICs

arepoICgen is called using code similar to the following, where it is wrapped in the generateICs function:

from arepoICgen import arepoICgen

config = {}
params = {}

arepoICgen(config, params)
Examples

See examples.txt for some example setups of the config and params dictionaries.

  1. AREPO is publicly available, see here

  2. See Boss & Bodenheimer (1979)

  3. See Bonnell et al. (2008)

  4. See Bonnor (1956) and Ebert (1955)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arepoicgen-0.2.6.tar.gz (18.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arepoicgen-0.2.6-py3-none-any.whl (19.0 kB view details)

Uploaded Python 3

File details

Details for the file arepoicgen-0.2.6.tar.gz.

File metadata

  • Download URL: arepoicgen-0.2.6.tar.gz
  • Upload date:
  • Size: 18.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for arepoicgen-0.2.6.tar.gz
Algorithm Hash digest
SHA256 8efa1c95065c0e55d13a2b39a5ed2991010c5abfddcf84a3064d6404b9cc3901
MD5 7eefcd548a0e1ff656b33cd9e56d7246
BLAKE2b-256 04d739778152f5b24cec8ec59a1f3e871d501819c7628e72c2d5fcc6f8f02b8f

See more details on using hashes here.

File details

Details for the file arepoicgen-0.2.6-py3-none-any.whl.

File metadata

  • Download URL: arepoicgen-0.2.6-py3-none-any.whl
  • Upload date:
  • Size: 19.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for arepoicgen-0.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 f11c20b3916386672d9284c629eb8e89b9b04b99b6fe4dd2867f3a791f0d5cd1
MD5 f1e96a4d16fad5ba29a4f2dd9e4da337
BLAKE2b-256 aeb8f95b9f7490f8b79b4c75bd417d7a47fe2ad09c810371ff0ec597905922ab

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page