GLVis / glvis

Lightweight OpenGL tool for accurate and flexible finite element visualization
http://glvis.org
BSD 3-Clause "New" or "Revised" License
249 stars 51 forks source link

Final changes for glvis-4.3 #284

Closed tzanio closed 1 month ago

tzanio commented 2 months ago

📆 Target release date: July 15, 2024 August 7, 2024

🟡 In Progress:

🟢 DONE:

After the release:

Postponed:

najlkin commented 2 months ago

What is the idea with quadrature functions? Interpreting them as L2 elements would be very simple :wink: . I have done that in the past in my codes.

tzanio commented 2 months ago

What is the idea with quadrature functions? Interpreting them as L2 elements would be very simple 😉 . I have done that in the past in my codes.

This has been discussed multiple times, but there are essentially 3 options we have considered:

  1. Plot p.w. const function on the LOR Gauss-Lobatto mesh, where each LOR element contains exactly one Gauss-Legendre quadrature point. (The p points of 1D GLL quadrature rule are interleaved by the p+1 points of the 1D GL rule)

  2. Interpret quadrature values as the dofs of an L2 grid funcion

  3. Draw a little sphere for each point

Option 3 is most general and will be required for "Support for visualization of particle data". I personally like option 1, because it does not introduce variations beyond the original data. That works only on quad/hex meshes though.

najlkin commented 2 months ago

I see, we must reach consensus then what way to go, which might take longer than actually implementing it 😁 .

tzanio commented 2 months ago

We can also support both options 😁

najlkin commented 2 months ago

I found out there is no smooth vizualization in 2D for vector fields atm. This could be also added, but it would require to differentiate the vector-to-scalar function 🤔

justinlaughlin commented 1 month ago

In the future should PRs be pulled into glvis-4.x-dev first instead of master?

tzanio commented 1 month ago

In the future should PRs be pulled into glvis-4.x-dev first instead of master?

No, the current policy is that PRs should go first in master and then we merge master in glvis-4.3-dev.

(The intention for the release branches was to be small and short-lived)

tzanio commented 1 month ago

MFEM autotest was giving styling errors, so I run "make style" here but the results may not be fully satisfactory.

Please review https://github.com/GLVis/glvis/pull/284/commits/c697e0b465988d5a0c082edf0813705ffac75131

najlkin commented 1 month ago

We should really add make style to PR CIs as #288 was merged without it 🙃

justinlaughlin commented 1 month ago

We should really add make style to PR CIs as #288 was merged without it 🙃

Oops, my bad 😅

tzanio commented 1 month ago

Should we add a test stream for quadrature function visualization?

For example quadrature.saved.zip corresponding to https://github.com/GLVis/web/pull/12#issuecomment-2267634028?

najlkin commented 1 month ago

Should we add a test stream for quadrature function visualization?

That would be wise 😉 , but we do not have a matching example code for that, but I do not know if it is really a rule to have one... 🤔

tzanio commented 1 month ago

we do not have a matching example code for that, but I do not know if it is really a rule to have one... 🤔

it is not a hard requirement

tzanio commented 1 month ago

the quadrature test would be nice if it is added, but it goes to data anyway.

I don't think it hurts to do it now. I can propose a PR with the above file, unless you prefer something else @najlkin

najlkin commented 1 month ago

the quadrature test would be nice if it is added, but it goes to data anyway.

I don't think it hurts to do it now. I can propose a PR with the above file, unless you prefer something else @najlkin

No, let us do it 🚀 .

justinlaughlin commented 1 month ago

While we have all this glvis momentum can we get eyes on https://github.com/GLVis/pyglvis/pull/44 so we can merge :). This can be after the glvis release of course. There will be other changes needed for pyglvis (such as updating the glvis-js version hosted on npm), but it will be nice to test with the rewrite.