[petsc-users] Refinement on TS

Smith, Barry F. bsmith at mcs.anl.gov
Thu Jul 5 12:20:29 CDT 2018


   When it exits the loop will depend on your criteria for adapativitiy so I have no way of knowing if it is enough, surely you can tighten your criteria so that it requires several refinements in the loop.

   Barry


> On Jul 5, 2018, at 5:38 AM, Amir <mhbaghaei at mail.sjtu.edu.cn> wrote:
> 
> Hello
> Trying to loop over the TSolve() to apply the refinement, I used the below procedure. However, this only goes 1 level of refinement and then it exits. Do you think this is a right algorithm?
> Thanks for your great time.
> Amir
> 
> PetscInt GRID=1;
> for (GRID=1;GRID<GRID_MAX;){
> //
> // FIND THE ADAPTED SOLUTION
> // USING PREVIOUS SOLUTION VECTORS
> //
> //
> // BUILDING THE ADAPTED SOLUTION AND DM
> //
> DMDACreate1d();
> DMSetFromOptions();
> DMSetUp();
> DMCreateGlobalVector();
> //
> // INTERPOLATE FROM COARSE TO REFINE
> //
> // DESTROYING THE FINE TEMPERORAY VECS AND
> // RESETTING THE COARSE VECS WITH REFINED NEW VECS
> //
> //
> // BUILDING TS
> //
> TSCreate();
> TSSetApplicationContext();
> TSSetDM();
> TSSetProblemType(ts,TS_NONLINEAR);
> TSSetType(ts,TSPSEUDO);
> TSSetIFunction();
> TSSetTimeStep();
> //
> TSSolve();
> //
> TSDestroy();
> DMDestroy();
> //
> GRID=GRID+1;
> //
> }//end GRID-loop
> 
> 



More information about the petsc-users mailing list