Model Tests

Here, we describe some tests of the model. This growing suite of tests are packaged with the repository so that developers can examine the impact of any code updates.

SKIRT tests

SKIRT is an outstanding dust radiative transfer code developed by the Ghent group with a number of features that distinguish it from powderday. Here, we describe how to run model tests between the two codes.

A few notes:

Relevant Hash:

The powderday hash for the most recent set of tests is 21204f2 and the relevant SKIRT hash is 96e8be9761c3021498b847854bf84c3da3129555.

Simulation Codes:
 

The tests done here have been done for Gizmo simulations, and Gasoline/Changa simulations with a tipsy output format.

Downloads:

The relevant parameter files (the .ski input file for SKIRT and the parameters*.py files for powderday are packaged with the repository.

The hydrodynamic simulations for the test runs that ship with powderday aren’t included in the repository due to their size. The gizmo simulation is the same mufasa zoom simulation as in the Gadget/Gizmo quickstart section, and is available here. The Changa/Gasoline/Tipsy output is galaxy_00300 from the public yt datasets page

Actually Running the Tests: Powderday:

In what follows, we lead the user through the tests for a Gizmo type simulation, though the process for testing the tipsy outputs is similar.

To run the powderday test code, run:

python pd_front_end.py tests/SKIRT/gizmo_mw_zoom parameters_master_401 parameters_model_401

After having edited the parameters_master and parameters_model file for your specific paths.

Actually Running the Tests: SKIRT:

SKIRT needs to know the stellar and gas particle information from the hydrodynamic simulation. In `analytics.py, there’s a function SKIRT_data_dump() that dumps these files to your powderday output directory. Here, it should have dumped files with a path like:

tests/SKIRT/gizmo_mw_zoom/SKIRT.134.gas.particles.txt

SKIRT also requires an input parameter file which can be created via a terminal input following their tutorials. We have created the .ski input file:

tests/SKIRT/pd_test.dust.ski

SKIRT requires paths relative to the run directory. After compiling SKIRT, one possible setup might be:

cd SKIRT/run
mkdir pd_test
cp <path_to_powderday>/tests/SKIRT/pd_test.dust.ski pd_test
../release/SKIRT/main/skirt pd_test/pd_test.dust.ski

In the run directory, this should create a file like: /home/desika.narayanan/SKIRT/run/test_i90_sed.dat. This has chosen one particular viewing angle (which, in fact may not be the same viewing angle as the powderday simulation - in fact it was arbitrarily chosen). Then you can run:

cd <path_to_powderday>
python tests/SKIRT/skirt_sed_plot.py

and it should produce an image like

_images/powderday_skirt_comparison.png

Persistent Differences in the Models

While we have attempted to ensure as much of an apples-to-apples comparison between codes, some differences are persistent that manifest themselves in the emergent SEDs.

The input SEDs are different, as is evident in the UV portion of the comparisons. The former employ interpolated BC03 stellar models at a lower resolution than the input MILES spectral libraries for the fsps models that powderday employs.