Comments (11)
Isn't it correct, though, that in that case there matrix does and should have a null space? Do we need to impose constraints for the testcase to remove the nullspace?
from aspect.
What we have done successfully in the past is to:
- ignore the nullspace during assembly/solve with GMRES staying in the same subspace
- remove the nullspace as a postprocess
from aspect.
Good point. So what do we do here?
from aspect.
Before we mark this as resolved, I have one more data point:
Take tests/depth_average_01.prm, increase global refinement by one and switch back to Q4 -> crash. This can be fixed by either switching to Q1 or by setting cheap solver steps = 0. Crazy.
from aspect.
The way I read the discussion over on the deal.II testcase I created is that this is really a failure in Trilinos to compute things relative, not absolute. I think we need to do something like this in the Trilinos solver wrappers:
const double scaling_factor = 1./rhs.l2_norm();
rhs *= scaling_factor;
solution *= scaling_factor;
... do as before...
rhs /= scaling_factor;
solution /= scaling_factor;
I'll have to try something along these lines in the coming week.
We could also fix this in ASPECT, but I think it should go into deal.II.
from aspect.
@bangerth, all this won't solve our issue here though. If you switch to our CG implementation, you will get
The iterative (top left) solver in BlockSchurPreconditioner::vmult did not converge. It reported the following error:
Iterative method reported convergence failure in step 10000. The residual in the last step was 0.107138.
from aspect.
Well, the change might fix depth_average, not periodic_box. I think these are separate issues.
I don't really know what to do here :-(
from aspect.
Ideas:
- figure out how to do diagonal strengthening or something for the coarse KLU.
- give ML the constant mode for the displacement
- fix the displacement to make the system uniquely solvable (somewhat complicated)
from aspect.
I think you're going to have an extremely hard time to figure out the null space just from the domain and the description of what the boundary conditions are. It's sort of a pattern matching problem that humans are good at but that are difficult to put into rules :-(
from aspect.
For what it's worth, a PETSc build of Aspect runs this test without crashing.
from aspect.
closed by #328
from aspect.
Related Issues (20)
- "Allow fixed temperature on outflow boundaries = false" option does not work in time steps where mesh is refined HOT 6
- Issue on page /user/cookbooks/cookbooks/composition_passive_particles/doc/composition_passive_particles.html HOT 2
- replace ParticleOutput by deal.II::Particle::DataOut HOT 3
- Update Stokes preconditioner with free surface? HOT 2
- connect edit_parameters test to different signal HOT 2
- Issue on page /user/install/virtual-machine/running-models.html HOT 2
- rand_seed always returns the same value HOT 1
- Error when make the manual.pdf HOT 2
- My 3D simulation becomes much slower when using dealii9.4.2 than using dealii9.3.3 HOT 8
- TACC Singularity container in RHEL getting Fatal error in PMPI_Init_thread: Other MPI error, error stack HOT 8
- warning compiling aspect HOT 4
- Compositional reaction using the particle method HOT 3
- 2.5.0 release HOT 2
- Future of Eisenstat Walker method HOT 4
- How do I add a hyperdense layer around the CMB in the Steinberger model? HOT 1
- Issue with the particle method and the adaptive mesh HOT 5
- gcc 13 (Trilinos, dealii and aspect) HOT 6
- Document what to do with check.mk when writing new cookbooks
- artificial viscosity visualization postprocessor does not work on more than 1 processor HOT 6
- particle cell_weight error with deal.II master HOT 2
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 aspect.