Comments (4)
def compile_form(form: ufl.Form, comm: MPI.Intracomm) -> GeneralForm:
In most other other functions (mesh, fem, nls modules) the mpi_comm is first argument. Good to keep a consistent API.
from dolfinx.
This may be useful for implementing multigrid methods where we also have the same forms defined on different meshes.
from dolfinx.
I agree it would be nice to internally split form compilation and form creation, such that is it possible to create forms with different data as you propose.
With that, form creation (Python way) using coefficient and constant indices could be removed, as you can then rewrite the default dolfinx.fem.form() to use the low level compile_form and create_form and deduce maps from provided UFL form if not provided explicitly.
from dolfinx.
This may be useful for implementing multigrid methods where we also have the same forms defined on different meshes.
That is one of the motivations, another motivation is to make it possible to make "libraries" of specific forms.
Say you develop some specific scheme for solving a PDE, and would like to publish the code. This makes it possible to publish a single code compatible with both Python and C++.
from dolfinx.
Related Issues (20)
- [BUG]: Wrong dispatchment of field values in the mesh with VTK and VTX writers using a mixed space
- [BUG]: Conda test fails 0.8.0 HOT 3
- Add tests of LinearProblem and Nonlinearproblem
- Change C++ logging library to `spdlog` or `glog` HOT 6
- Support building on Windows
- [BUG]: dolfin / dolfinx /fenics / fenicsx not in debian testing repositories. HOT 4
- Support `dolfinx::fem::Expression` with co-dim 0 submeshes
- [BUG]: `create_entity_permutations` occasionally segfaults for prism meshes HOT 3
- Remove Fides file output HOT 5
- `dolfinx.fem.Form.integral_types` nanobinding is incorrect.
- interior_facet_assembly causes deadlock if there are no interior facets on the process HOT 2
- Test needed for dof permutations on prism and pyramid cells
- Read mixed topology mesh from file HOT 3
- Add mixed topology functionality to mesh partitioning HOT 1
- Write mixed topology mesh to file
- Generate Python type stubs using nanobind (v2)
- [BUG]: interpolation on CR space HOT 3
- [BUG]: #3215 introduced a regression: cannot have anymore `dx(1)` and `dx` in the same form
- [BUG]: Packing of codim-0 form not working for mixture of measures HOT 2
- Re-enable Windows build HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dolfinx.