Extract Iso Surface in 3D

Hi everyone,
I recently installed FreeFem because I am interested in the 3d mesh adaption routines (very satisified with that so far).

My problem right now is, that I want to solve a 3 dimensional PDE (with a scalar solution “u”) but I want to have boundary condition on the 2d surface where u=u_fix (just for the next time step).

Is there a smart (efficient) way to extract the iso mesh computational efficient and include a “int2d” boundary condition (du/dn=f(x,y,z))

(I have some Fortran code of my “old” naive solution without adaptive mesh algorithms, but I am not “willing” to port my bad code to FF++).
I know the 2d isoline function (but to my knowledge nothing like this exists for 3d).

Every bit of help is appreciated!


The solution “I came up with” utilizes “trunc” - but I only obtain a 3d mesh from that if i use “>” operator.
For “==” i get no results (because its unlikely to exaclity hit u==ufix on the any node).

Hi, i am still looking for a solution of the previous problem.

Furthermore, I want to solve a 2d equation on one surface of a 3d mesh, then transform the 3d mesh accordingly to the 2d solution.
Is there any smart way to do that? (I want to utilize movemesh, but right now i am not able to adress the 2d submesh)

Thank you

Sorry to day, you can not extract Iso surface in 3d.
In mmg3 I think they tool to do this but I am not sure.

A good idea…
I created a level set metric with mshmet, but for mmg3d i need to call the “-ls” (for level set: on) option.
But I cannot pass the argument.

Am I correct or missing something? (mmg3d does not adapt the mesh how I expect it - it rather does nothing)
Thank you for your help so far!

Best regards,

mesh3 ThSol = trunc( Th3, T>=Tsol*0.7);
fespace Uh(ThSol,P1);
Uh Tiso;
ThSol = mmg3d(ThSol,metric=Tiso[],iso=1,ls=0,hausd=0.003,hgrad=2.3,verbose=10);
plot(ThSol,cmm=“ThSol mmg3d bdmeshed”,wait=1);
ThSol = buildBdMesh(ThSol);
meshS ThSSol = ThSol.Gamma;
ThSSol = trunc(ThSSol,region==10);
ThSSol = mmgs(ThSSol,hausd=0.003,hgrad=2.3);

Thanks, with the new version it works!!

Best regards,