yt.analysis_modules.radmc3d_export.RadMC3DInterface.
RadMC3DWriter
(ds, max_level=2)[source]¶This class provides a mechanism for writing out data files in a format readable by radmc3d. Currently, only the ASCII, “Layer” style file format is supported. For more information please see the radmc3d manual at: http://www.ita.uni-heidelberg.de/~dullemond/software/radmc-3d
Parameters: | ds : Dataset
max_level : int
|
---|
Examples
This will create a field called “DustDensity” and write it out to the file “dust_density.inp” in a form readable by RadMC3D.
>>> import yt
>>> from yt.analysis_modules.radmc3d_export.api import RadMC3DWriter
>>> dust_to_gas = 0.01
>>> def _DustDensity(field, data):
... return dust_to_gas*data["Density"]
>>> yt.add_field("DustDensity", function=_DustDensity)
>>> ds = yt.load("galaxy0030/galaxy0030")
>>> writer = RadMC3DWriter(ds)
>>> writer.write_amr_grid()
>>> writer.write_dust_file("DustDensity", "dust_density.inp")
—
This example will create a field called “NumberDensityCO” and write it out to the file “numberdens_co.inp”. It will also write out information about the gas velocity to “gas_velocity.inp” so that this broadening may be included in the radiative transfer calculation by radmc3d:
>>> import yt
>>> from yt.analysis_modules.radmc3d_export.api import RadMC3DWriter
>>> x_co = 1.0e-4
>>> mu_h = yt.Quantity(2.34e-24, 'g')
>>> def _NumberDensityCO(field, data):
... return (x_co/mu_h)*data["Density"]
>>> yt.add_field("NumberDensityCO", function=_NumberDensityCO)
>>> ds = yt.load("galaxy0030/galaxy0030")
>>> writer = RadMC3DWriter(ds)
>>> writer.write_amr_grid()
>>> writer.write_line_file("NumberDensityCO", "numberdens_co.inp")
>>> velocity_fields = ["velocity_x", "velocity_y", "velocity_z"]
>>> writer.write_line_file(velocity_fields, "gas_velocity.inp")
Methods