On Thu, 4 Sep 2014, Miguel Angel Salazar de Troya wrote:

> Thanks. Could you answer the last question please? Basically I want to know 
> if I still can use cg once I use mesh refinement? I did quick
> calculations with equation (7) and I see the matrix is not symmetric so I 
> think I cannot use it.

Sorry, I was kind of oblique:

"Depending on the constraint options you select we fill in those
zero blocks with the constraint equations themselves or with ones
on the diagonal."

C^T K C is obviously symmetric, but if we add constraint equations
to the empty rows then we get something asymmetric; if you want to use
CG you need to make sure you're setting
asymmetric_constraint_rows=false (and then using
enforce_constraints_exactly() or something to fix up your hanging dofs
after each solve).

> I would like to double check with you. Which preconditioner would
> you recommend for adaptive mesh refinement in elasticity?

I'm not the one to ask about preconditioners.  My experience could
probably be summed up as:

AMG on each processor wins on problems where it works, ILU (usually
with ~4 levels) wins otherwise, tweaking Block Jacobi vs Additive
Schwarz to tie it together can speed things up slightly.

> Also, I had a question about the load balancing in the adaptive mesh
> refinement. Is this automatic?

Yes

> When is it done?

Inside EquationSystems::reinit()

> The vectors associated with a system are balanced as well?

Yes.  But they're either projected to the new grid or zeroed depending
on the option you gave to add_vector() or afterwards.

> What if we had created additional vectors that we initialize after each 
> refinement with the function init (const
> NumericVector<T> other), i.e.
> http://libmesh.sourceforge.net/doxygen/classlibMesh_1_1PetscVector.php#a1a9ed9f54cab101da906d976e0b7bea1

If you didn't use System::add_vector() to create it then the system
doesn't know about it and it doesn't get touched upon refinement.
---
Roy

------------------------------------------------------------------------------
Slashdot TV.  
Video for Nerds.  Stuff that matters.
http://tv.slashdot.org/
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to