From: Rafael V. <va...@im...> - 2016-09-09 20:21:07
|
By the way, since it may be useful for other things, let me explain how to get the degrees of freedom of a boundary side for a multipatch domain. Assume that your patch is "iptc", and the side number in the patch is "iside". First, you pass from the boundary to the interior of the patch using boundary.dofs, and then from the patch numbering to the global numbering using "gnum": ind = space.sp_patch{iptc}.boundary(iside).dofs; indices = space.gnum{iptc}(ind); About the rule to define the global numbering, I first number the internal degrees of freedom of every patch, and then the interfaces, recursively searching for dofs shared by more than two patches. If you want to see the details you can try to dig into the "mp_interface" function, but I would use it as a black box. Best, Rafa |