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

Reply via email to