[deal.II] Re: Constrain specific dofs to given value

2018-05-17 Thread Bruno Turcksin
Pai, This is not my area of expertise but the way I understand it to add a constraint into the constraint matrix, you first need to add a line in the constraint matrix and then add an entry in the constraint matrix. What you have done is adding empty lines to the constraint matrix and

Re: [deal.II] Re: Constrain specific dofs to given value

2018-05-17 Thread Wolfgang Bangerth
On 05/17/2018 10:05 PM, Pai Liu wrote: I found that I forget to add other boundary conditions, and in this case the stiffness matrix is in fact singular. From my understanding, if I want to constrain a dof "i" to zero, instead of adding a constraint of dofs "i, j, k, ...", I may only need the

[deal.II] Re: Constrain specific dofs to given value

2018-05-17 Thread Pai Liu
Bruno, Thank you for your prompt reply! I found that I forget to add other boundary conditions, and in this case the stiffness matrix is in fact singular. >From my understanding, if I want to constrain a dof "i" to zero, instead of adding a constraint of dofs "i, j, k, ...", I may only need

Re: [deal.II] Re: Constrain specific dofs to given value

2018-05-17 Thread Pai Liu
Dear Prof. Wolfgang Bangerth, > In that case, it is not enough to only pin the displacements at > one vertex of your domain. That kills the translation mode. But you still > need > to kill the rotation mode as well, which is one additional degree of > freedom > in 2d (for a total of 3) and 3

Re: [deal.II] Re: Constrain specific dofs to given value

2018-05-17 Thread Wolfgang Bangerth
Pai, I found two ways to constrain several dofs (as you mentioned, at least 3 dofs in 2D) for my problem: 1. I can use the "add_line" function, and do not use the "apply_boundary_values" function; or 2 . I can directly modify "std::map boundary_values" and

[deal.II] Constrain specific dofs to given value

2018-05-17 Thread Pai Liu
Hi all, I want to solve a 2D linear elastic problem with a Dirichlet boundary condition that keeps only one node fixed. And I encountered convergence problem by modifying codes in step-8 as following: In the setup_system() function, I used the "add_line" functions to contrain dof 0 and dof 1