Dear Davide,

First, I would say that in my opinion,  a coupling 1D-3D is risky, because, 
normally, the effect of the coupling should vanish when the mesh size decreases 
for order two PDEs. So the main risk is to construct a model which is mesh-size 
dependent.

But anyway, this is not so easy to couple 1D and 3D problems in GetFEM, except 
with the interpolate transformation techniques (see 
http://getfem.org/userdoc/gasm_high.html#interpolate-transformations). In that 
case, you should define a 1D mesh and a 3D mesh, use the identity interpolate 
transformation and you can add some interaction terms between the 1D and the 3D 
variables in a model, for instance.

Best regards,

Yves


----- Mail original -----
De: "Davide Manfredo" <manfredo.dav...@gmail.com>
À: "getfem-users" <getfem-users@nongnu.org>
Envoyé: Mercredi 2 Octobre 2019 11:05:32
Objet: [Getfem-users] Problem interface embedded domain

Dear GetFem++ users,

I am trying to solve a system concerning blood flow in a tissue and a blood
vessel, so I have a coupled 3D (tissue)-1D(vessel) problem, using Matlab
interface.
My unknowns are velocity u and pressure p either in the tissue and in the
vessel, we will call them ut, pt, uv, pv. The first one is a 3D vector
field, while the other three are scalar fields.
Clearly they are defined on different functional spaces, and so their test
functions.

I managed to obtain some of the sub-matrices contained in the complete
tangent matrix, but when I have to evaluate the interpolation matrix on the
boundary of the vessel I find myself stuck.

In particular I need to evaluate the interpolation matrix on the boundary
of the vessel, that is composed by the surrounding points of each node of
the vessel.

Now my questions are:
1) How can i define a 1D region in a 3D domain as a set of points and not
of convexes nor faces?
 2) Since my vessel is a 1D line, how can I define for each node the "ring"
of the surrounding points that will be useful to define my interpolation
matrix?

OmegaM;  %mesh
Pts; %List of pts that compose the vessel
s1 = gf_slice('points', OmegaM, Pts');
CVids1 = gf_slice_get(s1, 'cvs');
CVFIDs = gf_mesh_get(OmegaM, 'outer faces', CVids1); %faces
gf_mesh_set(OmegaM, 'region', 33, CVFIDs); %"boundary pipe" around the
vessel.

Thank you very much for your attention,
Best regards,

Davide
edited



<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
Mail
priva di virus. www.avast.com
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>

Reply via email to