[Getdp] ... Formulation question ...

Matt Koch mattkoch at scitex.us
Mon Mar 5 02:56:31 CET 2007


Hello Olivier,

thank you very much for the feedback! I think we are getting somewhere 
now! So, basically, we make Phi a Dof by saying so in the first Galerkin 
term, and then we use it without Dof in the second Galerkin term. I 
guess, as you say, that makes Phi explicit, so let's hope this scheme is 
stable. I assume this also means that in the second Galerkin term, the 
Phi from the previous time step is used? I'll start playing with this 
again sometime early this week. Also, I think my second equation can now 
be solved in a very similar way, presuming I can come up with the signum 
function, and presuming I can embed a TimeLoopTheta in a TimeLoopTheta, 
perhaps like so:

Resolution {
    {Name ResTraNonLin;
        System {
            {Name Sys1; NameOfFormulation Frm1;}
            {Name Sys2; NameOfFormulation Frm2;}
        }
        Operation {
            InitSolution[Sys1];
            SaveSolution[Sys1];
            TimeLoopTheta[Tme1Zro,Tme1Drn,Tme1Stp,Tme1Scm] {
                IterativeLoop[Itn1Cnt,Itn1Eps,Itn1Rlx] {
                    GenerateJac[Sys1];
                    SolveJac[Sys1];
                }
                Test[SveFct[]] {SaveSolution[Sys1];}
                Test[RstFct[]] {
                    "TransferSolution from Sys1 to Sys2"
                    TimeLoopTheta[Tme2Zro,Tme2Drn,Tme2Stp,Tme2Scm] {
                    IterativeLoop[Itn2Cnt,Itn2Eps,Itn2Rlx] {
                        GenerateJac[Sys2];
                        SolveJac[Sys2];
                    }
                    "TransferSolution from Sys2 to Sys1"
                }
            } 
        }
    }
}

Any thoughts on this construct? I am not sure how the transfer of 
solutions can be done, though. And yes, most naturally I would write 
this up for general GetDP use if it ends up working.

Thanks and Regards,

Matt Koch



Olivier Castany wrote:
> Hello,
>
> now that you give a more precise desciption of your problem, I 
> understand that you want to solve a dynamic equation.
>
> I can only be of little help since I do not understand the part b) of 
> the algorithm you want to program.
>
> I can just say that it is possible to program the equation : 
>
>   
>> a) d/dt(Phi) + Spd*Norm(Grad(Phi)) = 0
>>     
>
> the formulation would be :
>
> Galerkin { Dt [ Dof{Phi} , {Phi} ] ; ... }
> Galerkin { [ Spd[] * Norm[{d Phi}]  , {Phi} ] ; ... }
>
> and the resolution with "TimeLoopTheta" will be an explicit Euler 
> algorithm.
>
> As I don't really understand your algorithm with b), I can't say if it 
> is possible to do it with GetDP. My feeling is that it is not currently 
> possible without modifying the program.
>
> Regards,
>
> O.C.
>
> PS : if you manage to do something nice with the level set equations, 
> maybe you can post it later or put it on the wiki ?
> _______________________________________________
> getdp mailing list
> getdp at geuz.org
> http://www.geuz.org/mailman/listinfo/getdp
>
>
>