DiffEqOperators.jl
BoundaryValueDiffEq.jl
DiffEqOperators.jl | BoundaryValueDiffEq.jl | |
---|---|---|
3 | 1 | |
281 | 46 | |
- | - | |
4.6 | 9.7 | |
over 1 year ago | 23 days ago | |
Julia | Julia | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
DiffEqOperators.jl
-
Julia 1.7 has been released
>I hope those benchmarks are coming in hot
M1 is extremely good for PDEs because of its large cache lines.
https://github.com/SciML/DiffEqOperators.jl/issues/407#issue...
The JuliaSIMD tools which are internally used for BLAS instead of OpenBLAS and MKL (because they tend to outperform standard BLAS's for the operations we use https://github.com/YingboMa/RecursiveFactorization.jl/pull/2...) also generate good code for M1, so that was giving us some powerful use cases right off the bat even before the heroics allowed C/Fortran compilers to fully work on M1.
-
Why are NonlinearSolve.jl and DiffEqOperators.jl incompatible with the latest versions of ModelingToolkit and Symbolics!!!? Symbolics and ModelingToolkit are heavily downgraded when those packages are added.
(b) DiffEqOperators.jl is being worked on https://github.com/SciML/DiffEqOperators.jl/pull/467 .
-
What's Bad about Julia?
I like that they are colored now, but really what needs to be added is type parameter collapasing. In most cases, you want to see `::Dual{...}`, i.e. "it's a dual number", not `::Dual{typeof(ODESolution{sfjeoisjfsfsjslikj},sfsef,sefs}` (these can literally get to 3000 characters long). As an example of this, see the stacktraces in something like https://github.com/SciML/DiffEqOperators.jl/issues/419 . The thing is that it gives back more type information than the strictest dispatch: no function is dispatching off of that first 3000 character type parameter, so you know that printing that chunk of information is actually not informative to any method decisions. Automated type abbreviations could take that heuristic and chop out a lot of the cruft.
BoundaryValueDiffEq.jl
-
Old programming language is suddenly getting more popular again
This isn't theoretical too, here's an actual user who opened an issue where their MWE was using quaternions:
https://github.com/SciML/BoundaryValueDiffEq.jl/issues/52
This is how I found out it worked in the differential equation solver: users were using it. The issue was unrelated (they didn't define enough boundary conditions), so it's quite cool that it was useful to someone. It turns out the quaternions have use cases in 3D rotations:
https://en.wikipedia.org/wiki/Gimbal_lock
which is where this all comes in. Anyways, it's always cool to learn from users what your own library supports! That's really a Julia treat.
What are some alternatives?
Gridap.jl - Grid-based approximation of partial differential equations in Julia
SciMLBenchmarks.jl - Scientific machine learning (SciML) benchmarks, AI for science, and (differential) equation solvers. Covers Julia, Python (PyTorch, Jax), MATLAB, R
FourierFlows.jl - Tools for building fast, hackable, pseudospectral partial differential equation solvers on periodic domains
ModelingToolkit.jl - An acausal modeling framework for automatically parallelized scientific machine learning (SciML) in Julia. A computer algebra system for integrated symbolics for physics-informed machine learning and automated transformations of differential equations
SciMLTutorials.jl - Tutorials for doing scientific machine learning (SciML) and high-performance differential equation solving with open source software.
NeuralPDE.jl - Physics-Informed Neural Networks (PINN) Solvers of (Partial) Differential Equations for Scientific Machine Learning (SciML) accelerated simulation
ApproxFun.jl - Julia package for function approximation
DifferentialEquations.jl - Multi-language suite for high-performance solvers of differential equations and scientific machine learning (SciML) components. Ordinary differential equations (ODEs), stochastic differential equations (SDEs), delay differential equations (DDEs), differential-algebraic equations (DAEs), and more in Julia.
ReservoirComputing.jl - Reservoir computing utilities for scientific machine learning (SciML)
fortran-lang.org - (deprecated) Fortran website
julia - The Julia Programming Language
DiffEqGPU.jl - GPU-acceleration routines for DifferentialEquations.jl and the broader SciML scientific machine learning ecosystem