Jehanzeb Hameed <[email protected]> a écrit : > Hello, > > I am now comfortable enough with getfem to start attacking the > interface problem, thanks to help from this list. In the code for > getfem++/contrib/inter_element_test, there is piece of code which I > cant fully understand, and I havent been able to figure it from the > documentation. The relevant lines of code are: > > const base_matrix& B = ctx1.B(); > gmm::mult(B, pgt1->normals()[f1], up); > scalar_type norm = gmm::vect_norm2(up); > scalar_type J = ctx1.J() * norm; > > What is the matrix B? Also, does J give the determinant of Jacobian > transformation for the face (if so, why)?
B is the transpose of the inverse of the gradient of the geometric transformation (pseudo-inverse if the element have a lower dimension than the mesh) see the documentation pages http://download.gna.org/getfem/doc/getfem_project/getfem_project_4.html#id5 http://download.gna.org/getfem/doc/getfem_project/getfem_project_7.html ctx1.J() is the jacobian of the transformation of the whole element. Multiplied by the norm of the normal to the face, it gives the jacobian of the transformation of the face, yes. > > Also, on a related note, I am planning to use the technique in this > file to implement the jump integral. Yves mentioned the method in > crack.cc, which uses mortars and some sort of constraints matrix, > which I havent looked into yet. Is there a reason to prefer one of the > two approaches? It depends of what you need to do. If you have a single mesh with to regions and a discontinuity between the two regions, the faster is probably the method used in crack.cc. Regards, Yves. > > Thanks, > -Jehanzeb > > > 2009/7/1 Ronan Perrussel <[email protected]>: >> Hello, >> >> it was not fully straightforward but you can find an example in: >> getfem++/contrib/inter_element_test, >> if you have matching meshes on the interface. If not it is certainly >> possible but I am not the expert to explain how to do. >> >> I hope it helps, >> Best regards, >> Ronan >> >> Jehanzeb Hameed a écrit : >>> >>> Hello, >>> >>> I am investigating the possibility of using getfem for implementing a >>> 2 domain problem, with an interface between the domains. I want to use >>> continuous lagrange elements on each domain, and a jump condition at >>> the interface. The jump condition will take the form (u_1 - u_2, v_1 - >>> v_2), where u_1 and v_1 and test and trial functions for domain 1, and >>> u_2 and v_2 are test and trial functions for domain 2. The integral >>> (u_1 - u_2, v_1 - v_2) is only over the interface between the domains. >>> >>> Can this be done relatively easily in getfem? >>> >>> Thanks, >>> -Jehanzeb >>> >>> _______________________________________________ >>> Getfem-users mailing list >>> [email protected] >>> https://mail.gna.org/listinfo/getfem-users >>> >> >> > > _______________________________________________ > Getfem-users mailing list > [email protected] > https://mail.gna.org/listinfo/getfem-users > _______________________________________________ Getfem-users mailing list [email protected] https://mail.gna.org/listinfo/getfem-users
