Le 19 nov. 07 à 11:31, Yves Renard a écrit :
> On Monday 19 November 2007 11:15, mikael gueguen wrote:
>> hi
>> what is the good way to write global matrix for FEM with gmm?
>> if i use a dense_matrix for writing the global matrix during the
>> assembly procedure, i have problem with large scale problem,
>> and if i use a col_matrix < gmm::wsvector<double> >, it 's not
>> possible to access the rows, and i cannot insert boundary condition.
>>
>> How can i resolve that?
>>
>
> You mean you want to prescribe Dirichlet type boundary conditions
> (solution
> prescribed on the boundary) ?
yes
> It depends on how you prescribe the boundary conditions. There is
> at least
> three possibilities : Adapt the stiffness matrix cleaning some
> lines of the
> matrix, penalization or Lagrange multipliers.
i set to zero the row and column corresponding to prescribed dof:
gmm::scale(gmm::mat_col(M,c),0.);
gmm::scale(gmm::mat_row(M,c),0.);
M(c,c)=1.;
> For the first method, the optimal way if either to have a row matrix
> (row_matrix < gmm::wsvector<double> > or row_matrix <
> gmm::rsvector<double> >
> for instance) or if you have a column matrix, set to zero the
> potentialy non
> zero elements by considering the neighbor dofs (i.e. the dofs of
> the elements
> containing the dof to be prescribed).
only the dofs of the element? but i must also access the row and
colums elements in my matrix in this case.
>
> Yves.
>
>
> --
>
> Yves Renard ([EMAIL PROTECTED]) tel : (33)
> 04.72.43.87.08
> Pole de Mathematiques, INSA de Lyon fax : (33)
> 04.72.43.85.29
> 20, rue Albert Einstein
> 69621 Villeurbanne Cedex, FRANCE
> http://math.univ-lyon1.fr/~renard
>
> ---------
_______________________________________________
Getfem-users mailing list
[email protected]
https://mail.gna.org/listinfo/getfem-users