From: Tim Kroeger <tim.kroeger@ce...>  20081021 14:51:21

Dear John/Roy/all, Another question pops up in connection with my ShellMatrix, in particular with the vector v and w that form a TensorShellMatrix. When I assemble v and w (where the matrix B = v w'), I certainly have to call something similar to DofMap::constrain_element_matrix(), but I'm not quite sure what the correct thing is, since I'm not familiar with libMesh's constaining mechanism. My guess would be to call DofMap::constrain_element_vector(v,dof_indices); and do nothing to w. Can you please let me know whether this is correct? Also, I understand that all of these constraining functions occassionally have to change their dof_indices argument, hence if I assemble a SparseMatrix and a TensorShellMatrix at the same time, the following is obviously wrong: DofMap::constrain_element_matrix_and_vector(Ke,Fe,dof_indices); DofMap::constrain_element_vector(v,dof_indices); I mean, the second call will get the modified dof_indices and interpret v in the wrong way. Hence, I guess the correct thing to do is to implement a new method DofMap::constrain_element_matrix_and_two_vectors()  or even DofMap::constrain_element_matrix_and_several_vectors() (taking a vector of vectors). Please let me know what you suggest. I think I would be able to implement such methods myself. Best Regards, Tim  Dr. Tim Kroeger Phone +494212187710 tim.kroeger@..., tim.kroeger@... Fax +494212184236 MeVis Research GmbH, Universitaetsallee 29, 28359 Bremen, Germany Amtsgericht Bremen HRB 16222 Geschaeftsfuehrer: Prof. Dr. H.O. Peitgen 