Hello all,
This is the test condition:
A light emitting surface with edge length of 1mm x 1mm emits 1 lm of light in an lambertian way.
This is observed by a camera very far away (infinte) normal to the light surface.
Theory says:
luminance = luminous flux / solid angle / projected lit up area
luminance = 1 lm / pi (solid angle of lambert emitter) / 0,000001 m^2
luminance = 318310 cd/m^2
Luxcore result is 172966 cd/m² read from Blender...
I validated that with a professional software that reads *.exr files. It gives the same numbers as Blender.
A simulation with that software confirms the theoretical solution.
This is my test file:
Please let me know your thoughts about that.
Thank you.
wrong luminance calculation
Forum rules
Please upload a testscene that allows developers to reproduce the problem, and attach some images.
Please upload a testscene that allows developers to reproduce the problem, and attach some images.

 Posts: 219
 Joined: Thu Jan 18, 2018 6:02 pm
wrong luminance calculation
OS  Windows 7 X64
CPU  Intel CORE i7
GPU1  Variants of notebook card from nVidia
GPU2  Variants of notebook onboard card from Intel
Lux  Latest possible relaease
CPU  Intel CORE i7
GPU1  Variants of notebook card from nVidia
GPU2  Variants of notebook onboard card from Intel
Lux  Latest possible relaease
Re: wrong luminance calculation
The difference seems to come from this line of code, where BlendLuxCore converts lumen to watt: https://github.com/LuxCoreRender/BlendL ... ht.py#L741
Let's calculate the factor: 2*pi*(1  cos(90°/2)) = 1.84030,
as well as the ratio of your results: 318310/172966 = 1.84030 the same.
I might be wrong becauseI always found this topic of luminous units confusing, but I came to this conclusion: I believe there was a mixup in the BelndLuxCore implementation, i.e. confusion between luminous flux (measured in lumen) and luminous intensity (measurd in candela).
Luminous flux is a measure of power weighted by the response of the human eye, which is a function of wavelength. Because LuxCore assumes the theoretical maximum of 683 lm/W, the two should just be equivalent. (And the equation used now actually exports Candela, not Watt).
P.S. 1: the equation should have used cos(spread_angle), not cos(spread_angle / 2), because spread_angle is already defined as the half angle.
P.S. 2: The same equation is used a few lines above in conversion from power to power: https://github.com/LuxCoreRender/BlendL ... ht.py#L731
P.S. 3: I'm wondering if, in LuxCore, "efficiency" should be divided by the same factor 683 https://github.com/LuxCoreRender/LuxCor ... l.cpp#L165
Let's calculate the factor: 2*pi*(1  cos(90°/2)) = 1.84030,
as well as the ratio of your results: 318310/172966 = 1.84030 the same.
I might be wrong becauseI always found this topic of luminous units confusing, but I came to this conclusion: I believe there was a mixup in the BelndLuxCore implementation, i.e. confusion between luminous flux (measured in lumen) and luminous intensity (measurd in candela).
Luminous flux is a measure of power weighted by the response of the human eye, which is a function of wavelength. Because LuxCore assumes the theoretical maximum of 683 lm/W, the two should just be equivalent. (And the equation used now actually exports Candela, not Watt).
P.S. 1: the equation should have used cos(spread_angle), not cos(spread_angle / 2), because spread_angle is already defined as the half angle.
P.S. 2: The same equation is used a few lines above in conversion from power to power: https://github.com/LuxCoreRender/BlendL ... ht.py#L731
P.S. 3: I'm wondering if, in LuxCore, "efficiency" should be divided by the same factor 683 https://github.com/LuxCoreRender/LuxCor ... l.cpp#L165

 Posts: 219
 Joined: Thu Jan 18, 2018 6:02 pm
Re: wrong luminance calculation
Hello,
A physics based conversion from Lumen to Watt should somehow use the v(lambda)curve and should take into account the emitted color. The 683lm/W is only valid for monochromatic perfect green light...
I tested the cd option  it works fine.
I tested also the cd/m^2 option  works fine as well.
Can the above issue be fixed?
I don't really understand where this formula is coming from but it seems to cause that trouble. I totally agree.
A physics based conversion from Lumen to Watt should somehow use the v(lambda)curve and should take into account the emitted color. The 683lm/W is only valid for monochromatic perfect green light...
I tested the cd option  it works fine.
I tested also the cd/m^2 option  works fine as well.
Can the above issue be fixed?
OS  Windows 7 X64
CPU  Intel CORE i7
GPU1  Variants of notebook card from nVidia
GPU2  Variants of notebook onboard card from Intel
Lux  Latest possible relaease
CPU  Intel CORE i7
GPU1  Variants of notebook card from nVidia
GPU2  Variants of notebook onboard card from Intel
Lux  Latest possible relaease

 Posts: 219
 Joined: Thu Jan 18, 2018 6:02 pm
Re: wrong luminance calculation
Hi,
I'm quoting myself:
One more question to light sources:
If one use a 90° spread angle  the surface will emit light like a perfect lambertian emitter? It follows the CosineLaw?
If the spread angle is reduced does luxcore cut the lambertain distribution is the cosine "shrinked" to the new angle?
With best regards
I'm quoting myself:
Please fix this bug that the created light output fits to real world data.
One more question to light sources:
If one use a 90° spread angle  the surface will emit light like a perfect lambertian emitter? It follows the CosineLaw?
If the spread angle is reduced does luxcore cut the lambertain distribution is the cosine "shrinked" to the new angle?
With best regards
OS  Windows 7 X64
CPU  Intel CORE i7
GPU1  Variants of notebook card from nVidia
GPU2  Variants of notebook onboard card from Intel
Lux  Latest possible relaease
CPU  Intel CORE i7
GPU1  Variants of notebook card from nVidia
GPU2  Variants of notebook onboard card from Intel
Lux  Latest possible relaease