RNATM(1) General Commands Manual RNATM(1)

rnatmcheck atmospheric data and structures built to manage them

rnatm [-hNv] [-a aerosol_opt[:aerosol_opt ...]] [-c] [-d octrees] [-i storage] [-n name] [-o storage] [-s nu0,nu1] [-T optical_thickness] [-t thread_count] [-V definition] -g gas_opt[:gas_opt ...]

rnatm helps to check and diagnose errors in input data as submitted to the RaD-net atmospheric library. It also makes it easy to check the internal workings of the library, such as the construction of structures used to accelerate ray tracing in the heterogeneous semi-transparent environment described by the input data.

In addition to regular verification of the input data format, additional tests can be performed (option -c) to further validate the data, at the cost of longer execution time. For example, enabling this option allows to verify the validity of aerosol phase function indices with respect to the mesh to which they are associated and the list of loaded phase functions.

The options are as follows:

aerosol
Define an aerosol. Use this option once per aerosol, and duplicate it as many times as necessary.

The aerosol options are as follows:

volume_mesh
Aerosol tetrahedral mesh saved in smsh(5) format.
string
Name assigned to the aerosol.
radiative_properties
Radiatve properties of the aerosol saved in sars(5) format. Radiative properties are defined per volumetric mesh node. This file and the tetrahedral mesh (option mesh) must therefore be consistent with each other, i.e. the nodes must be listed in the same order.
phase_functions_list
List in rnsl(5) format of phase functions to be loaded. Each phase function is saved in rnsf(5) format. The correspondence between these phase functions and the nodes of the volumetric mesh is defined in another file (option phaseids).
per_node_phase_function
Path to the rnpfi(5) file that stores the index of the phase function to be used per volumetric mesh node. The list of phase function is defined in another file (option phasefn). Note that this file and the tetrahedral mesh (option mesh) must be consistent with each other, i.e. the nodes must be listed in the same order.
Thorough data validation.
octrees
Write the builded acceleration structures (i.e., the octrees) to file according to the VTK file format. They are written to standard ouput if the file is a dash (-). To split the resulting file into n VTK files, each storing an octree, one can use the csplit command. For example with n = 4:
csplit -f octree -k file %^# vtk% /^# vtk/ {2};
gas_opt[:gas_opt ...]
Gas mixture.

The gas options are as follows:

volumetric_mesh
Gas tetrahedral mesh saved in smsh(5) format.
correlated_k
Correlated K fof the gas saved in sck(5) format. The correlated K are defined per volumetric mesh node. This file and the tetrahedral mesh (option mesh) must therefore be consistent with each other, i.e. the nodes must be listed in the same order.
temperature
Gas temperatures saved in rngt(5) format. The temperature is defined per volumetric mesh node. This file and the tetrahedral mesh (option mesh) must therefore be consistent with each other, i.e. the nodes must be listed in the same order.
Display short help and exit.
storage
Acceleration structures are not built from scratch, but loaded from the storage file.
Precalculate tetrahedron normals. This speeds up execution performance for applications that search for the tetrahedron to which a position belongs. In return, the memory space used to store normals increases the memory footprint.
name
Atmosphere name. Default is “atmosphere”.
storage
Offload acceleration structures to the storage file.
nu0,nu1
Spectral range to consider (in nanometers). Default is visible spectrum, i.e., [380, 780] nm.
optical_thickness
Optical thickness criteria for the construction of acceleration structures. Default is 1.
thread_count
Advice on the number of threads to use to build acceleration structures. Default assumes as many threads as processor cores.
definition
Advice on the definition of the acceleration structures along the 3 axis. Default is 512.
Make rnatm Verbose.

The rnatm utility exits 0 on success, and >0 if an error occurs.

A rnatm command line can be lengthy due to the options required to describe the atmopshere. For editing purposes, the following command line spans multiple lines using the backslash character (\). While there's nothing original about this practice, we'd like to emphasize the importance of spaces or their absence before the backslash character, particularly for options defining aerosols (option -a): their argument must be a single character string with no spaces other than those that may be required for file names.

rnatm -v -c \
      -g mesh=gas.smsh:ck=gas.sck:temp=gas.rngt \
      -a name=clouds\
:mesh=clouds_tetrahedra.smsh\
:radprop=clouds_properties.sars\
:phasefn=clouds_phase_functions.rnsf\
:phaseids=clouds_phase_function_ids.rnpfi \
      -a name=haze\
:mesh=haze_tetrahedra.smsh\
:radprop=haze_properties.sars\
:phasefn=haze_phase_functions.rnsf\
:phaseids=haze_phase_function_ids.rnpfi \
      -N \
      -T 10 \
      -V 1024
      -o storage.bin

The above command line runs rnatm in a verbose way (option -v) for a thorough verification of the input data (option -c). The gas of the planetary atmosphere (option -g) is described by the tetrahedral mesh recorded in the gas.smsh file, while its spectral data and temperature are given by the files gas.sck and gas.rngt, respectively.

Two aerosols complete the planetary atmosphere (option -a): one for clouds and one for haze. Their respective meshes are stored in the clouds_tetrahedra.smsh and haze_tetrahedra.smsh files while their radiative properties are given by the clouds_properties.sars and haze_properties.sars files. Finally, their phase functions are described by a set of 2 files: the clouds_phase_functions.rnsf and haze_phase_functions.rnsf files which list the aerosol phase functions, and the clouds_phase_function_ids.rnpfi and haze_phase_function_ids.rnpfi files which reference them by volumetric mesh node.

The normals of the tetrahedral meshes of the gas and aerosols are precalculated once and for all (option -N). The definition of acceleration structures cannot exceed 1024^3 (option -V) and its voxels can be merged until their optical thickness is greater than 10 (option -T). These structures are finally stored in storage.bin (option -o).

htrdr-planets(1), rnpfi(5), rnsf(5), rnsl(5), sars(5), sck(5), smsh(5)

rnatm has been developed as part of ‘ANR-21-CE49-0020’ RaD-net project.

October 1, 2025 UNIX