Dear Radames,
The condition you need to prescribe sigma_ij * n_j = n_j = p1 * n_i on S_N1 Is a very standard Neumann condition for elasticity (in fact for arbitrary model of a continous media with a vector displacement) Of course, here the data p1 which is the prescribed stress on the boundary S_N1 is a vector valued field on that boundary. If you know explicitely p1, so the additional term in the weak formulation of the problem is simply \int_S p1.v where v is the test function and p1.v the scalar product. In that case, you can simply use the standard source term brick. If you have a problem computing p1 because it comes from a tensor field multiplied by the unit normal to the boundary, then you can use the "normal source term brick". If p1 has only a pressure component (no shear stress) then, you can use the "normal source term brick" with a diagonal tensor field. Is that answer to your problem ? Yves. On mercredi 23 novembre 2011, [email protected] wrote: > Dear Yves, > > many thanks for your reply. I agree with you, that I have to specify a > Neuman boundary condition. AFAIK, it is normaly given by: > u_i,j * n_j = p1 * n_i on S_N (Notation with Einstein summation > convention) or in weak form > int_S_N u_i,j * n_j * v_i= int_S_N p1 * n_i * v_i for all test functions > v > In my elastostatic problem I have > > sigma_ij * n_j = (lambda * delta_ij * u_k,k + 2 * mu * (u_i,j + u_j,i)/2 ) > * n_j = p1 * n_i on S_N1 > where the unknown is the displacement vector field u. My problem is how to > specify this boundary condition (in 3D)? E.g. how do I get the normal of > the face at given point of the mesh m? If I use the (normal) source term > brick, how does it know to use sigma_ij and not u_i,j? > I figured out, that I cannot use the coordinates x,y,z but need to use > x[0], x[1], x[2] instead in m.eval("[...]"). I use the demo_tripod.py demo > as my template. > > As the equations are unreadable in my first email I repeat them here: > e_ij = (u_i,j + u_j,i)/2 in V > sigma_ij = lambda delta_ij epsilon_kk + 2 mu epsilon_ij in V with > lambda, mu Lamé coefficient sigma_ij,j + b_j = 0 in V with > b data > u_i = w_i on S_D with w data > sigma_ij n_j = p1 n_i on S_N1 with p1 data and n the unit > normal of the surface (face) sigma_ij n_j = p2 n_i on S_N2 > with p2 data and n the unit normal of the surface (face) Somehow my mailer > dropped the references I've read but probably not understand completly. > Here they are [1] > <http://download.gna.org/getfem/html/homepage/userdoc/model_linear_elastic > ity.html> [2] > <http://download.gna.org/getfem/html/homepage/userdoc/model_dirichlet.html > > [3] > <http://download.gna.org/getfem/html/homepage/userdoc/model_source_term.ht > ml> > > > -----Ursprüngliche Nachricht----- > > Von: Yves Renard > > Gesendet: Tue. 22.11.2011 17:21 > > An: [email protected], [email protected] > > Betreff: Re: [Getfem-users] boundary problem with elastostatic > > > > > > Dear Radames, > > > > Neumann conditions are taken into account by the source term brick. > > In weak > > formulation, a Neumann condition is a source term on the > > corresponding > > boundary. See examples and > > http://download.gna.org/getfem/html/homepage/userdoc/model_source_term.ht > > ml > > > > > > Yves. > > > > On mardi 22 novembre 2011, [email protected] wrote: > > > Dear all, > > > > > > I'm a newbie to getfem++. > > > > > > I want to solve an isotropic homogenous elastostatic problem. The > > > > (first) > > > > > mesh is ready but I cannot see how to include my boundary > > > > conditions. > > > > > Here are the equations of my problem: > > > > > > e_ij = (u_i,j + u_j,i)/2 in V > > > sigma_ij =lambda delta_ij epsilon_kk + 2 mu epsilon_ij in V with > > > > lambda, mu > > > > > Lamé coefficient sigma_ij,j + b_j = 0 in V with b data > > > u_i = w_i on S_D with w data > > > sigma_ij n_j = p1 n_i on S_N1 with p1 data and n the unit normal of > > > > the > > > > > surface (face) sigma_ij n_j = p2 n_i on S_N2 with p2 data and n the > > > > unit > > > > > normal of the surface (face) > > > > > > p1 and p2 are gas pressures. Therfore there is no tangential > > > > traction at > > > > > the surfaces S_Ni, but only normal pressure. S_N1 + S_N2 + S_D = > > > > partial > > > > > V. > > > > > > > > > For the first three equations I can use the linear elasticity brick > > > > [1] > > > > > AFAICS. For the Dirichlet condition I can use the Dirichlet brick > > > > [2]. But > > > > > with the two Neumann boundaries I cannot see how to specify them. > > > > The > > > > > unknown of the FEM is the displacement field u. The boundary > > > > condition is > > > > > given in terms of sigma but not (directly) in terms of u. I expect > > > > that > > > > > the Neumann brick [3] implements u_i,j n_j = v_i, but that's not > > > > what I > > > > > need. How can I proceed? > > > At the moment I use the python interface, but I can move to the c++ > > > interface if it can solve my problem easier. > > > > > > [1] > > > [2] > > > [3] > > > > > > > > > Many thanks for any hints. > > > > > > Kind regards, > > > Radames > > > > > > > > > > > > > > > --- > > > E-Mail ist da wo du bist! Jetzt mit freenetMail ganz bequem auch > > > > unterwegs > > > > > E-Mails verschicken. Am besten gleich informieren unter > > > http://mail.freenet.de/mobile-email/index.html > > > > > > _______________________________________________ > > > Getfem-users mailing list > > > [email protected] > > > https://mail.gna.org/listinfo/getfem-users > > --- > Nutzen Sie freenet Mail optimal angepasst für Ihr iPhone, Android oder > Nokia Handy auch von unterwegs. Alle Infos und Download unter -- Yves Renard ([email protected]) 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 --------- _______________________________________________ Getfem-users mailing list [email protected] https://mail.gna.org/listinfo/getfem-users
