Thank-you, and I appreciate the welcome. Your advice was indeed helpful to move forward with my project.
I ran a test calculation and encountered this error saying the Stokes iterative solver didn’t converge. Could I get some help in identifying what I did that ASPECT doesn’t like? I looked at the convergence history and the change after each iteration at the end was sub-decimal place.
The following lines are from the standard output error:
An error occurred in line <1264> of file </scinet/niagara/software/2018a/opt/intel-2018.2-intelmpi-2018.2/aspect/2.0.1/
deal.II-v9.0.0/include/deal.II/lac/solver_gmres.h> in function
void dealii::SolverFGMRES<VectorType>::solve(const MatrixType &, VectorType &, const VectorType &, const Preconditi
onerType &) [with MatrixType = aspect::internal::StokesBlock, PreconditionerType = aspect::internal::BlockSchurPrecondi
tioner<dealii::TrilinosWrappers::PreconditionAMG, dealii::TrilinosWrappers::PreconditionBase>, VectorType = dealii::Tri
The violated condition was:
Iterative method reported convergence failure in step 1000. The residual in the last step was 488.312.
This error message can indicate that you have simply not allowed a sufficiently large number of iterations for your ite
rative solver to converge. This often happens when you increase the size of your problem. In such cases, the last resid
ual will likely still be very small, and you can make the error go away by increasing the allowed number of iterations
when setting up the SolverControl object that determines the maximal number of iterations you allow.
The other situation where this error may occur is when your matrix is not invertible (e.g., your matrix has a null-spac
e), or if you try to apply the wrong solver to a matrix (e.g., using CG for a matrix that is not symmetric or not posit
ive definite). In these cases, the residual in the last iteration is likely going to be large.
The parameters I ran were altered from a successful test-run using the material model ‘simpler’. The changes I made were:
- Material model to ‘nondimensional’
- inner/outer radii to 0.6 and 1.6, to describe a system with depth =1
- boundary temperatures to 1 and 0
- gravity to equal the Rayleigh number, compensating for the reduction to 1 of other values
Do I perhaps need to lower the CFL number? I’m honestly stuck, since I don’t see how my changes relate to the error information. I hope this isn’t too much to ask about.