[Getdp] ... Formulation question ...

mkoch at gvtc.com mkoch at gvtc.com
Thu Mar 1 23:44:49 CET 2007


Hi Olivier,

many thanks for taking the time to craft your reply. I am not sure I  
can follow, though. My formulation does not contain "Galerkin{[Dof{d  
Phi},{d Phi}];...}", at least not deliberately, and I am not sure why  
it should. It does not represent the equations I want to solve. What I  
do need to solve are the Level Set equations (see for example  
http://www.engr.uconn.edu/~cmli/paper/levelset_cvpr05.pdf):

a) d/dt(Phi) + Spd*Norm(Grad(Phi)) = 0

b) d/dTau(Phi) - sign(PhiZro)*(1-Norm(Grad(Phi))) = 0

So, I initialize Phi as a Signed Distance Function (SDF) from the  
initial location of an interface. I then advance Phi via a) by one  
physical time step and call the result of that PhiZro. Then I  
reinitialize ("straighten out") Phi via b), where I use PhiZro as the  
initial value and where Tau is a non-physical time - I can do that for  
a few steps in Tau, or all the way to equilibrium. The result of that  
I use as I see fit (mostly to give the new location of the interface),  
before going back with that into a) as its new initial value and  
repeating the process. Hereby, the use of b) is to ensure that Phi  
remains a SDF, and Spd is the speed at which the interface moves.

Now, the presence of the Galerkin term suggested by you would mean (I  
think) an equation as follows is present:

Div(Grad(Phi)) = 0 with Grad(Phi) = 0 on all surfaces

This equation is not one of the Level Set equations. Sorry for being  
so dense. I have been using GetDP successfully in the past for fairly  
simple problems, but I am either not fully understanding GetDP (highly  
likely), or I am pushing the limits of GetDP (possible) as I am trying  
to set up, let alone solve, the above equations.

Could you perhaps provide a more detailed explanation of how your term  
would enter the picture, and if so, in particular what the  
Formulation{} object would look like in detail then?

Thanks and Regards,

Matt Koch





----- Message from castany at quatramaran.ens.fr ---------
     Date: Thu, 1 Mar 2007 22:43:42 +0100
     From: Olivier Castany <castany at quatramaran.ens.fr>
Reply-To: Olivier Castany <castany at quatramaran.ens.fr>
  Subject: Re: [Getdp] ... Formulation question ...
       To: getdp at geuz.org


> Hello,
>
> your formulation probably contains a term like :
>
> Galerkin { [ Dof{d Phi} , {d Phi} ] ; ... }			(1)
>
> which makes it possible to build a matrix equation.
> You can then add a term :
>
> Galerkin{ [ Spd[] * Norm[{d Phi}]  , {Phi} ] ; ... }		(2)
>
> and solve the problem recursively with a non-linear scheme
> (InitSolution, IterativeLoop, GenerateJac, SolveJac).
>
>> However, if I leave out the Dof{} term, won't that mean that Phi is no
>> longer treated as a variable to be solved for, but rather as something
>> given already? In other words, I won't be solving the right problem?
>
> This is the point of the recursive scheme (InitSolution, IterativeLoop,
> GenerateJac, SolveJac)
>
> * First iteration :
>
> Phi has been initialized. The default initial value is : Phi = 0
> everywhere (but another initial value can be given in the "Constraint"
> section with "Type Init")
>
> The value of the field "Spd[] * Norm[{d Phi}]" in eq. (2) is 0.
>
> The matrix equation is then solved and you get a field Phi.
>
> * Second iteration :
>
> The value of the field "Spd[] * Norm[{d Phi}]" in eq. (2) is calculated
> based on the result of the first iteration.
>
> The matrix equation is then solved and you get another field Phi.
>
> * Third iteration ... ...
>
> If you're lucky, the process converges to a fixed point which is your
> solution.
>
> Regards,
>
> O.C.
>
> _______________________________________________
> getdp mailing list
> getdp at geuz.org
> http://www.geuz.org/mailman/listinfo/getdp
>


----- End message from castany at quatramaran.ens.fr -----