|
From: | Yves Renard |
Subject: | Re: [Getfem-users] Lumped mass matrix |
Date: | Wed, 07 Mar 2012 13:37:02 +0100 |
User-agent: | Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.27) Gecko/20120216 Lightning/1.0b2 Thunderbird/3.1.19 |
Dear Roman, First a remark : as you built your second version, the loop on all the components is very much more expensive than the use of a fourth order tensor in the first version. The best way is the second strategy would be to iterate on the potential nonzero element, i.e. the "neighbhour" degrees of freedom (an exemple exist in the fonction asm_generalized_dirichlet_constraints of getfem_assembling.h, I think). Moreover, there is in fact a way to obtain a lumped matrix in dimension higher than 1 : is to use the Newton cotes Integration methods. But of course, there is a general difficulty if I remember correctly : sub-integration and summation of the components are only valid for first order finite element methods. This is more complex to obtain correct lumped matrices (i.e. non-singular positive matrices and without to much loss of accuracy) for higher order finite element methods. I don't know is there exists some generic procedure for that. Still if I remember correctly, the summation strategy for the quadratic finite element method leads to a non-positive matrix while the use of a Newton cotes Integration method leads to a singular matrix. Yves. Le 05/03/2012 11:11, Roman Putanowicz a écrit : Dear All, Continuing my previous post:I see two other approaches : a) summing the rows to the assembled global matrix.In the attachment you have the second version of the assembly routine asm_lumped_mass_matrix_v1() where the lumping is done after assembly. The only thing I wonder is, if it makes sense to check for non-zero entries of the matrix and how to set sensibly the threshold (which here is set arbitrarily to 1e-10). Regards, Roman_______________________________________________ Getfem-users mailing list address@hidden https://mail.gna.org/listinfo/getfem-users -- Yves Renard (address@hidden) tel : (33) 04.72.43.87.08 Pole de Mathematiques, INSA-Lyon fax : (33) 04.72.43.85.29 20, rue Albert Einstein 69621 Villeurbanne Cedex, FRANCE http://math.univ-lyon1.fr/~renard --------- |
[Prev in Thread] | Current Thread | [Next in Thread] |