-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Eulumdat file handiling #10
Comments
LUMOS uses the photometric law for the light distribution calculation, that means all light sources are treated as point light sources. To avoid errors in the calculation, LUMOS checks, if the distance to the surface in question is at least 5 times larger as the longest luminaire dimension. If not, LUMOS automatically subdivides the luminaire into a grid of sub-luminaires within the luminaire dimensions with the same luminous distribution curve but reduced luminous flux, e.g. 10 sub luminaires with a 1/10 of luminous flux. Hence, it should be just as simple as providing the correct luminaire dimensions in the EULUMDAT file. |
Yes, that works fine. I have tried it with one wide luminaire. I need 7 - one on each of the 7-sided of the room. Once I add a second I seem to have overloaded things:- 'MATLAB:badsubscript |
Both luminaires have a spectrum applied? The error message: Index must not exceed 0 implies that there is an empty array somewhere. |
Ah sorry, I jumped to wrong conclusion - I failed to select the spectrum. Apologies. It works now - getting there...... |
Yes, a finer mesh density setting would help here. The standard setting is roughly 5 patches per m², the smaller the room geometry is, the higher the density setting should be. I would try if 25 is sufficient or go for 50, but calculation time will significantly increase. Best start with one luminaire to figure out which setting suits your needs. Luminaires should indeed be treated as transparent during room reflexion calculation. |
it looks like no amount of increase in grid size or number of reflections will smooth/change the spot-pattern seen in the illuminance image of one of the walls. However, I note that the mesh is very fine at the centre of the wall (see below). Could, perhaps, the spot pattern seen in the illuminance be an artefact of the mesh that could be removed by some sort of smoothing of the illuminance distribution? Otherwise, I can't see a way around this. |
Please excuse my late reply. LUMOS has a simple mesh "optimization" implemented that basically sends out rays from the luminaires in all directions and the intersection points with surfaces are added to the mesh. This should ensure a finer mesh near the luminaires. In your case this is not ideal, as the optimization is only performed from the luminaire centre. I will think about making that option selectable and also address long luminaires in the next version. For now, you can simply turn the code from line 260 to 315 in the meshing.m file into a comment and the mesh optimization should vanish. Judging from your mesh, I would say you can increase the mesh density if the calculation time is still acceptable. |
can I just check which LUMOS function the code line numbers 260-315 refer to? |
LUMOS mesh function I'm guessing..... |
Sorry again for the late reply, yes the mesh function, which is located in a separate file named "meshing.m". |
Can you check if these are the lines of code in Meshing.m (260-315) in LUMOS version 1.11 you intended to be commented out:- Q = [px(1) py(1) pz(1)];
end % observer ray2plane grid points % TODO: change to user defined resolution This is the error message if I run without these:- MATLAB:m_mixed_closed_and_open_function_defs However, if I then remove the commenting, it works as normal. |
Not exactly, sorry. There seems to be some mix up in my local code and the github version. The following lines should do the trick: `
%{ end ind = lumrayx>min(py) & lumrayx<max(py); |
Yes, that's it (provided I don't comment out the final 'end'). Thanks. I'll get toward on increasing the mesh density a bit - but the results already look better. |
It seems to me, that one of the luminaires is not considered in the simulation at all. Would you provide me with your example file? I would be delighted to have a look into it. |
The Eulumdat isn’t mine to publish on GitHub sadly. Otherwise I’d be happy to post it.
… On 22 Nov 2023, at 05:46, Frederic Rudawski ***@***.***> wrote:
It seems to me, that one of the luminaires is not considered in the simulation at all. Would you provide me with your example file? I would be delighted to have a look into it.
—
Reply to this email directly, view it on GitHub <#10 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/BAJ6WOMDIBUOWKSTI2ZX4ITYFWGUFAVCNFSM6AAAAAA6NRFM5WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRSGE2TCNBRGY>.
You are receiving this because you authored the thread.
|
I have updated the repository, the issue should be resolved now. There are some more changes in LUMOS:
Mind that for now the luminaire illustration in the results will show the total luminaire length and width despite point 7. This is something I have to "fix" in a later release. |
Currently I'm importing a Eulumdat file for a 1.8m fluorescent lamp with a 2cm circular cross section having a uniform directional output over 360 degrees. It works fine. However, rather than importing multiple such luminaire files to make a 1m wide bank of these lamps, it seems it is likely to be more efficient to redefine the Eulumdat file as a 1.8m long lamp with a rectangular cross section 2cmx100cm ie. a single wide flat lamp. Is this just a matter of inserting the appropriate dimensions in the Eulumdat file? Will LUMOS be able to handle this as a single lamp emitting uniformly in all directions. For example, I need the reflections from the wall immediately behind the large flat lamp to reflect light correctly into the room.
The text was updated successfully, but these errors were encountered: