README.md (3909B)
1 # Star Gebhart Factor 2 3 The purpose of this C library is to numerically compute the [Gebhart 4 factor](https://en.wikipedia.org/wiki/Gebhart_factor) between 3D 5 primitives. The Gebhart factor *B(i,j)* between two arbitrary surfaces 6 *i* and *j* is defined as the fraction of the radiative flux emitted by 7 *i* that is absorbed by *j*. It is not equal to the [form 8 factor](https://en.wikipedia.org/wiki/View_factor) between *i* and *j*, 9 even tough the difference is subtle: the form factor is the fraction of 10 the radiative flux emitted by *i*, in direction of *j* (which is not 11 necessarily totally absorbed by *j*). In our case, Gebhart factors have 12 been integrated over *j*, which means that we compute the fraction of 13 the radiative flux emitted by *i* that is absorbed by all other 14 surfaces. It is obviously not equal to one, since a fraction of the flux 15 can be re-absorbed by *i* itself. 16 17 Star-GF estimates Gebhart factors with the Monte-Carlo method: it 18 consists in simulating the trajectory of energy bundles according to a 19 relevant physical model. Emission, absorption and reflection processes 20 are therefore taken into account, as well as spectral aspects (surface 21 properties can be defined as a function of wavelength). Should 22 scattering processes in semi-transparent media be taken into 23 consideration, it would be possible (even if actually not implemented). 24 The main advantage of this statistical method is the fact it provides a 25 numerical accuracy over each result: the Monte-Carlo method is often 26 referred as a reference method. Also, the resulting algorithm is totally 27 decoupled from the geometry: it will remain the same for every scene, no 28 matter how much data is used for its description. This geometry is 29 provided by the caller through a scene managed by the 30 [Star 3D](https://gitlab.com/meso-star/star-3d) library. 31 32 Gebhart factors may finally be used in order to compute the radiative 33 flux absorbed by each surface, and subsequently the net radiative flux 34 over each surface. The main advantage of Gebhart factors over form 35 factors is the associated flexibility in terms of reflection properties: 36 while form factors are computed with the implicit assumption that 37 surfaces are diffuse reflectors, there is no such restriction in the 38 case of Gebhart factors; any type of reflection can be used (totally or 39 partially specular surfaces). 40 41 ## Requirements 42 43 - C compiler 44 - POSIX make 45 - pkg-config 46 - [RSys](https://gitlab.com/vaplv/rsys) 47 - [Star 2D](https://gitlab.com/meso-star/star-2d) 48 - [Star 3D](https://gitlab.com/meso-star/star-3d) 49 - [Star SamPling](https://gitlab.com/meso-star/star-sp) 50 51 ## Installation 52 53 Edit config.mk as needed, then run: 54 55 make clean install 56 57 ## Release notes 58 59 ### Version 0.3 60 61 Replace CMake with POSIX make as build system. 62 63 ### Version 0.2.4 64 65 Sets the required version of Star-SampPling to 0.12. This version fixes 66 compilation errors with gcc 11 but introduces API breaks. 67 68 ### Version 0.2.3 69 70 Fix API break on filter function introduced by Star-3D 0.8. 71 72 ### Version 0.2.2 73 74 Bump the version of the dependencies and fix the code to handle their 75 updates. 76 77 ### Version 0.2.1 78 79 Fix a crash that occurred in scenes having medium with a null 80 absorption. In such scenes, radiative flux going to infinity are not 81 allowed and must be handled as a numerical imprecision or a scene 82 inconsistency. This was not the case: this flux was accumulated into a 83 specific counter that was not initialised since, in this situation, such 84 flux could not exist. 85 86 ### Version 0.2 87 88 - Add support of 2D scenes. 89 - Add support of the radiative flux absorption in 0D medium. 90 91 ## License 92 93 Copyright (C) 2021, 2024 |Meso|Star> (contact@meso-star.com) 94 Copyright (C) 2015-2018 EDF S.A., France (syrthes-support@edf.fr) 95 96 Star-GF is free software released under the GPL v3+ license: GNU GPL 97 version 3 or later. You are welcome to redistribute it under certain 98 conditions; refer to the COPYING file for details.