-
Notifications
You must be signed in to change notification settings - Fork 109
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
Trixi v0.4 #720
Comments
@Cczernik You have been assigned to the multicomponent stuff. What's your opinion on declaring this part as stable (instead of experimental)? |
The multicomponent stuff works properly and should not face any serious problems in the near future. So I would be in favor of declaring it as stable. |
I'd like to update to StartUpDG v0.11 https://github.com/jlchan/StartUpDG.jl/releases/tag/v0.11.0, which contains some breaking API changes. Since those are in the |
Does the user interface of functions defined in Trixi.jl change? If not (and since your solvers are pretty new), I would say we can update now, see #764 |
Sounds good. I'll do that in a separate PR today. |
@trixi-framework/developers If I didn't miss anything, #895 will close the last breaking change we want to get into v0.4. Please correct me if I'm wrong or forgot anything. |
Nice! I should be able to finish that review early tomorrow morning. |
My plan for releasing v0.4 is as follows.
|
Here is a first draft of our announcement. Please make suggestions how to improve this. We are pleased to announce the release of v0.4 of Trixi.jl, our Julia package providing adaptive high-order numerical simulations of hyperbolic PDEs. Compared to the initial release of v0.3, we have introduced a ton of new features. In particular, we added new mesh types enabling simulations on unstructured, curvilinear, non-conforming and adaptive meshes in multiple space dimensions. These new mesh types support all of our solver features, including shock capturing techniques for high-order methods. Additionally, we have introduced new physical models including multicomponent compressible Euler and magnetohydrodynamics equations. Moreover, Trixi.jl composes well with forward mode automatic differentiation and similar approaches. We presented most of these features already in our presentation of Trixi.jl at JuliaCon. Furthermore, we have some interactive visualizations with Makie.jl - kudos to As a teaser, here is the simulation of the shallow water equations with a bottom topography on a circular domain with slip-wall boundaries using a discontinuous Galerkin method on a high-order curved unstructured quadrilateral mesh. The next video shows an MHD rotor, a rapidly spinning dense cylinder embedded in a magnetized, homogeneous medium at rest. This simulation uses a discontinuous Galerkin method on a high-order, curvilinear mesh with adaptive refinement and shock capturing. Many of these new features come with additional contributions to the Julia ecosystem. For example, we created P4est.jl as thin wrapper around the C library On top of these new features, we worked on the internals of Trixi.jl. In particular, we improved the performance quite a bit and were able to beat another open source code implementing the same numerical algorithms in Fortran by up to 2x. The details are available in our preprint. Since this is a breaking release, some user-facing changes are of course necessary. However, they should not affect most codes and are summarized in our NEWS.md. Kudos to all contributors for exciting developments - and thanks to all users encouraging us! Here is our current list of main features (changes vs. v0.3.0 highlighted):
|
Could we also bold the |
This sounds already great, thanks for creating this! I especially like the highlighting 👍 Three comments from my side:
|
Good suggestion. How do I embed a Youtube video on Discourse - just by posting the link on a single line? (That's what I added in the draft above) |
I wouldn't want to promise anything but if you're sure about MPI, that's fine - could you please draft such a paragraph? |
Same here. I suggest to write something like this when the question comes up again. |
Yes, according to my Google search, this is how it it should work. |
I can draft something if there are other suggestions. Only a single item does not make sense, as it suggests a rather low development activity, which I think wouldn't do us justice. |
Looks really good! I have just one minor bikeshedding suggestion
I'd suggest replacing "we got" with "we've introduced" throughout the release. |
Thanks, @jlchan - I changed the draft above |
Here is a possible plan what to do to create v0.4 of Trixi.jl. These steps can be done without introducing breaking changes. Thus, they can be merged directly into
main
without further problems.flux_kennedygruber
,flux_derigs_etal
, andflux_chandrashekar
from elixirs #738ape
toacoustics
#722FluxRotated
as stable (more stuff is stable #798)adapt_to_mesh_level
as stable (more stuff is stable #798)Declare support for Plots.jl as stable (https://trixi-framework.github.io/Trixi.jl/stable/visualization/#Plots.jl and several docstrings) after Plots.jl recipes using UnstructuredPlotData2D #755 is mergedDeclareVolumeIntegralPureLGLFiniteVolume
as stable?The following changes are breaking. Thus, I would prefer to create separate PRs for each of them that get merged into some staging area (good old
dev
? Ormain
and create a new branchrelease-0.3
to include possible bug fixes that need to be released immediately? I prefer the second option).basis
part ofDG
tooperator
or something similar? #633TODO: nonconservative terms
) (remove old nonconservative stuff #807)# FIXME: Deprecations introduced in v0.3
) (remove features deprecated in v0.3 #896)max_abs_speed_naive
for curvilinear Euler, MHD, etc. #869Look for other issues that might require breaking changes:
nnodes
#711Additionally, we might want to check
misc
CI job or split into multiple jobs #794BoundaryConditionWall
doesn't work with StructuredMesh type #805GlmSpeedCallback
withoutStepsizeCallback
#856P4estMesh
#642prolong2mortars!
withP4estMesh
allocates sometimes #628Then, we should be ready to
Left for Trixi v0.5 or later:
The text was updated successfully, but these errors were encountered: