solarLoad - results not coherent with analytical
Summary
solarLoad produce a temperature field that is not consistent with analytical results.
The case I use (case attached to issue) to test solarLoad is an aluminium cube with size 1 m within a cubic dummy fluid region with size 1.5 m (used to introduce solarLoad) representing deep space (i.e. T = 0K and vacuum).
The solarLoad is set to be fixed in direction (x axis) and fixed with a value of 1400 W/m2 with no reflected rays and only one band in the spectrum (i.e. nBands 1) If the value of absorptivity and emissivity are equal the analytical solution is 253 K. The results given by the simulation are between 242 K and 245 K, quite far from the analytical solution. Furthermore, if the values of absorptivity and emissivity are changed but kept equal the solution changes. This should not be happening, if the ratio absorptivity/emissivity is one the solution should be still 253 K.
The analytical solution is verified by using a workaround that does not use solarLoad, the case is attached to the issue: the dummy fluid region is split so that there is a region in front of the cube thus it is possible to simply set qro to 1400 in 0//qr file. In this case, changing the values of absorptivity and emissivity but keeping the ratio equal to 1 the solution does not change, that is coherent with analytical results.
The values of the view factors for the geometry in exam are checked and coherent with analytical.
The workaround of course cannot be applied to curved surfaces as the input flux has to be scaled according to the angle between the sun direction and the cell face normal.
Analytical solution: T = (q_sun/sigma * abosrptivity/emisivity * A_in_sun/A_tot) ^ (1/4) for a cube with equal values of absorptivity and emissivity the solution is T = (q_sun/sigma * 1/6) ^ (1/4)
Steps to reproduce
In the attached files just run "Allrun". The values for absorptivity and emissivity can be changed in templates/solarLoad/boundaryRadiationsProperties
Example case
Two examples are attached:
- cube-nosolarload-test-v0 the solarLoad input is bypassed as explained in the Summary
- cube-solarload-test-v1 solarLoad is used but produce wrong results
Second series of examples are shared in this repo. Informations on the case are reported in the README file
What is the current bug behaviour?
Wrong temperature field produced
What is the expected correct behavior?
Temperature field coherent with analytical results.
Relevant logs and/or images
All the cases concerning the issue are in this shared folder
Environment information
- OpenFOAM version : v2112|v2106
- Operating system : ubuntu
- Hardware info :
- Compiler : precompiled