Comments (3)
I think this will be tricky to make backwards compatible since solution
and current_local_solution
are public members, not hidden behind accessors. One thought is that System::update()
could be changed so that it doesn't do the localize
step from solution
-> current_local_solution
... then current_local_solution
could still live in System
, but only certain subclasses of System
would actually initialize/use it, perhaps by setting some needs_current_local_solution
flag.
from libmesh.
They're public members, but they're members wrapped in unique_ptr
, so one could be left unallocated, if we were careful about not actually trying to dereference it in library code or application code when this feature is active.
But ... no, that still wouldn't work. Even in code that doesn't conceptually need both a solver-compatible solution
and a ghosting-enabled current_local_solution
, the standard way to work is to write to solution
(as the canonical data), update()
, then read from current_local_solution
(to get the complete data on local elements). We'd need to add new setter/getter methods and transition to those before we could even begin reworking the underlying data structures, wouldn't we?
I've already warned Yaqi that I wouldn't be looking at this before October at the earliest, but now I'm wondering whether even then it'd worth bulldozing everything, unless we were able to go even further and do something like merging the two vectors entirely.
from libmesh.
conceptually it would be nice to only have one vector
from libmesh.
Related Issues (20)
- Support mixed-order meshes in `find_neighbors()`, `stitch_meshes()` HOT 1
- Spurious -I/usr/include/tirpc is added when autodetecting libtirpc in linker path
- Refactor HDG NS example to use FEMContext
- VTK output then read loses block id information HOT 5
- MatSetValues_MPIAIJ() triggers malloc error at line 565 during libMesh termination HOT 6
- Installation error due to petsc compatibility HOT 12
- constrain_element_matrix changes the col_dofs vector size HOT 3
- Make Abaqus node/side ID maps available
- DM type 'libmesh' did not attach the DM to the matrix HOT 6
- Issues with latest libmesh devel -> master merge HOT 1
- Operator `()` of a petsc vector is not safe if used together with `set()` in a threaded loop.
- The 'mesh.read()' operation encounters errors when executed with 2048 processors HOT 1
- ExodusII IO has variable ID bug which can prevent coordinates from being read-in from a file HOT 4
- The release v1.7.2 doesn't have the tarballs attached HOT 1
- "No rule to make target..." installation error on Windows HOT 3
- Install FParser `fptypes.hh` header
- Libmesh out-of-date on spack HOT 3
- install error with vcpkg on linux HOT 5
- System destructor requires the mesh to still be around, through the dof map HOT 11
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 libmesh.