htrdr

Solving radiative transfer in heterogeneous media
git clone git://git.meso-star.fr/htrdr.git
Log | Files | Refs | README | LICENSE

commit f3884181c55f8e4079f904fcf7a056c5833dcc98
parent 77ef90be91e3a48c1e8b8f97ac3dbdf4125ecd8e
Author: Vincent Forest <vincent.forest@meso-star.com>
Date:   Tue, 15 Nov 2022 18:43:10 +0100

htrdr-planeto: start writing the man of the command

Diffstat:
Mcmake/doc/CMakeLists.txt | 6++++++
Adoc/htrdr-planeto.1.scd.in | 263+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 269 insertions(+), 0 deletions(-)

diff --git a/cmake/doc/CMakeLists.txt b/cmake/doc/CMakeLists.txt @@ -49,6 +49,12 @@ if(HTRDR_BUILD_COMBUSTION) list(APPEND MAN_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/htrdr-combustion.1.scd) endif() +if(HTRDR_BUILD_PLANETO) + configure_file(${HTRDR_DOC_DIR}/htrdr-planeto.1.scd.in + ${CMAKE_CURRENT_BINARY_DIR}/htrdr-planeto.1.scd @ONLY) + list(APPEND MAN_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/htrdr-planeto.1.scd) +endif() + set(MAN_FILES) set(MAN5_FILES) set(MAN1_FILES) diff --git a/doc/htrdr-planeto.1.scd.in b/doc/htrdr-planeto.1.scd.in @@ -0,0 +1,263 @@ +htrdr-planeto(1) + +; Copyright (C) 2018, 2019, 2020, 2021 |Meso|Star> (contact@meso-star.com) +; Copyright (C) 2018, 2019, 2021 CNRS +; Copyright (C) 2018, 2019 Université Paul Sabatier +; (contact-edstar@laplace.univ-tlse.fr) +; +; This program is free software: you can redistribute it and/or modify +; it under the terms of the GNU General Public License as published by +; the Free Software Foundation, either version 3 of the License, or +; (at your option) any later version. +; +; This program is distributed in the hope that it will be useful, +; but WITHOUT ANY WARRANTY; without even the implied warranty of +; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +; GNU General Public License for more details. +; +; You should have received a copy of the GNU General Public License +; along with this program. If not, see <http://www.gnu.org/licenses/>. + +# Name + +htrdr-planeto - simulate radiative transfer in 3D planetary atmosphere + +# SYNOPSIS + +htrdr-planeto [_option_] ... -g _gas_ + +# DESCRIPTION + +TODO + +# OPTIONS + +*-a* <_aerosol-parameter_:...> + Define an aerosol. Use this option as many times as there are aerosols to be + defined. Available aerosol parameters are: + + *mesh*=_path_ + Path to the *smsh*(5) file that stores the volumetric mesh of the aerosol. + + *name*=_string_ + Name assigned to the aerosol. + + *radprop*=_path_ + Path to the *sars*(5) file that stores the radiative properties of the + aerosol. Radiative properties are defined per volumetric mesh node and, + therefore, this file and the volumetric mesh file (see *mesh* parameter) + must be consistent with each other. + + *phasefn*=_path_ + Path to the *rnsl*(5) file that lists the *rnsf*(5) files to load; each of + theses files stores an aerosol phase function. The phase function to be used + per volumetric mesh node is defined in another file (see *phaseids* + parameter). + + *phaseids*=_path_ + 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 (see *phasefn* parameter). Note that this file must be + consistent with the volumetric mesh defined in the *mesh* parameter. + +*-C* <_camera-parameter_:...> + Configure a perspective camera. Available parameters are: + + *focal-dst*=_dst_ + Distance to focus on with a thin lens camera, that is, a camera whose + *lens-radius* is not zero. The default focal distance is + @HTRDR_ARGS_DEFAULT_CAMERA_PERSPECTIVE_FOCAL_DST@ meter. + + *focal-length*=_length_ + Focal length of a camera lens. It is another way to control the field of + view of a thin lens camera. By default, the field of view is directly set + through the **fov** parameter. + + *fov*=_angle_ + Vertical field of view of the camera in + \]@HTRDR_ARGS_CAMERA_PERSPECTIVE_FOV_EXCLUSIVE_MIN@, + @HTRDR_ARGS_CAMERA_PERSPECTIVE_FOV_EXCLUSIVE_MAX@[ degrees. By + default _angle_ is set to + @HTRDR_ARGS_DEFAULT_CAMERA_PERSPECTIVE_FOV@ degrees. + + *lens-radius*=_radius_ + Radius of the camera lens. A non-zero radius means that the camera is a thin + lens camera while a zero radius defines a pinhole camera. By default the + lens radius is @HTRDR_ARGS_DEFAULT_CAMERA_PERSPECTIVE_LENS_RADIUS@. + + *pos*=_x_,_y_,_z_ + Camera lens position. By default it is set to + {@HTRDR_ARGS_DEFAULT_CAMERA_POS@}. + + *tgt*=_x_,_y_,_z_ + Position targeted by the camera. By default it is set to + {@HTRDR_ARGS_DEFAULT_CAMERA_TGT@}. + + *up*=_x_,_y_,_z_ + Up vector of the camera. By default it is set to + {@HTRDR_ARGS_DEFAULT_CAMERA_UP@}. + +*-d* + Write atmospheric acceleration structures to _output_. Each structure is saved + in VTK ASCII file format [1]. To divide the resulting output into _n_ files + (_n_ > 1), each storing an acceleration structure, one can use the *csplit*(1) + command as below: + + ``` + csplit -f octree -k output %^#\ vtk% /^#\ vtk/ {$(grep -ce "^# vtk")} + ``` + +*-f* + Force overwrite the _output_ file. + +*-G* <_ground-parameter_:...> + Define the ground of the planet. Available ground parameters are: + + *brdf*=_path_ + Path to the *rnsl*(5) file that lists the *mrumtl*(5) files to load; each of + these files stores a ground BRDF. The BRDF to be used per ground node is + defined in another file (see *prop* parameter). + + *mesh*=_path_ + Path to the *smsh*(5) file that stores the surface mesh of the ground. + + *name*=_string_ + Name assigned to the ground. + + *prop*=_path_ + Path to the *rnsp*(5) file that stores ground surface properties. The + properties (BRDF index and temperature) are defined per surface mesh node + and, therefore, this file and the mesh file (see *mesh* parameter) must be + consistent with each other. + +*-g* <_gas-parameter_:...> + Define the gas mixture. Available gas parameters are: + + *mesh*=_path_ + Path to the *smsh*(5) file that stores the volumetric mesh of the gas. + + *ck*=_path_ + Path to the *sck*(5) file that stores the correlated K of the gas. The CKs + are defined per volumetric mesh node and, therefore, this file and the + volumetric mesh file (see *mesh* parameter) must be consistent with each + other. + + *temp*=_path_ + Path to the *rngt*(5) file that stores the temperature of the gas. The + temperature is defined per volumetric mesh node and, therefore, this file + and the volumetric mesh file (see *mesh* parameter) must be consistent with + each other. + +*-h* + Display short help and exit. + +*-i* <_image-parameter_:...> + Define the image to compute. Available image parameters are: + + *def*=<_width_>x<_height_> + Image definition. By default the image definition is + @HTRDR_ARGS_DEFAULT_IMG_WIDTH@x@HTRDR_ARGS_DEFAULT_IMG_HEIGHT@. + + *spp*=_samples-count_ + Number of samples to estimate one pixel, i.e. number of radiative paths + sampled per pixel. By default, *spp* is set to + @HTRDR_ARGS_DEFAULT_IMG_SPP@. + +*-N* + Precalculate tetrahedron normals. This speeds up runtime performance by + calculating normals once and for all rather than re-evaluating them every time + a tetrahedron is queried at a given position. In return, the memory space used + to store normals increases the memory footprint. + +*-O* _storage_ + File where atmospheric acceleration structures are stored/loaded. If _storage_ + does not exist, it is created and is used to store the built acceleration + structures. + + If _storage_ exists, acceleration structures are loaded from it rather than + built from scratch, resulting in significant acceleration of the preprocessing + step. Note that if the data structures stored in _storage_ are not as expected + (that is, the input atmospheric data or construction parameters are + different), an error is notified and execution is stopped, thus avoiding the + use of incorrect acceleration structures. + +*-o* _output_ + File to write the output data. The output data is either an image or atmospheric + acceleration structures if the *-d* option is set. If it is not defined, the + data is written to the standard output. + +*-S* <_source-parameter_:...> + Define the source. Available source parameters are: + + *lat*=_real_ + The latitude of the source, i.e. its angle between [-90, 90] degrees about + the x-axis. The default latitude is set to 0. + + *lon*=_real_ + The longitude of the source, i.e. its angle between [-180, 180] degrees + about the z-axis. The default longitude is set to 0. + + *dst*=_real_ + Distance in meters from source to origin. The default distance is 0. + + *radius*=_real_ + Source radius in meters. + + *temp*=_real_ + Source temperature in Kelvin. + +*-s* <_spectral-parameter_:...> + Configure spectral integration. Available spectral parameters are: + + *cie_xyz* + The radiance is calculated for the visible part of the spectrum between + 380 nm and 780 nm by sampling the wavelength relative to the XYZ CIE 1931 + color space. This is the default spectral integration. + + *lw*=_wlen-min_,_wlen-max_ + Perform continuous spectral sampling in the wavelength range [_wlen-min_, _wlen-max_] + (wavelengths must be provided in nanometers) according to the Planck + function for a reference temperature (see *Tref* parameter). If _wlen-min_ + and _wlen-max_ are equal, the calculation is monochromatic. *lw* means long + waves but is here a code word that actually means "calculation of radiance + using the internal source of radiation": in other words, radiation is + emitted by the medium and its limits (ground and space). + + *sw*=_wlen-min_,_wlen-max_ + Perform continuous spectral sampling in the wavelength range [_wlen-min_, + _wlen-max_] (wavelengths must be provided in nanometers) according to the + Planck function for a reference temperatura (see *Tref* parameter)e. If + _wlen-min_ and _wlen-max_ are equal, the calculation is monochromatic. In + this case, *sw* means that the radiation source is external to the medium. + + *Tref*=_temperature_ + The reference temperature in Kelvin of the Planck function used to + continuously sample the longwave/shortwave spectral range. In longwave, it + is set to 290 K by default while in shortwave, its default value is the + temperature of the sun's blackbody (i.e. 5778 K). + +*-T* _optical-thickness_ + Optical thickness used as a criterion to construct atmospheric acceleration + structures. Its default value is + @HTRDR_PLANETO_ARGS_DEFAULT_OPTICAL_THICKNESS_THRESHOLD@. + +*-t* _threads-count_ + Hint on the number of threads to use. Default assumes as many threads as CPU + cores. + +*-V* _definition_ + Advice on the definition of the atmospheric acceleration structures. Its + default value is + @HTRDR_PLANETO_ARGS_DEFAULT_GRID_DEFINITION_HINT@. + +*-v* + Make the command verbose. + +# SEE ALSO + +*mrumtl*(5), +*rnpfi*(5), +*rnsf*(5), +*rnsl*(5), +*sars*(5), +*smsh*(5)