134 | | Users can manually set error flags based on any other criteria (position, etc...) in their problem module. As an example, the [wiki:u/ehansen/RT Rayleigh-Taylor Instability] has an analytic solution. Therefore, one can get a good estimate of where the mesh should be refining at any given time. In this simulation, the mesh started refining in the middle region where the initial interface is located, and the refinement region expanded upwards and downwards as the instability grew: [attachment:expanding_refinement.gif RT Expanding Refinement Region]. This is not the most efficient way to refine, but it gives an idea of how one can refine based on position only. Here is the code so you can see precisely how this is done in a problem module: [attachment:problem.f90 RT problem.f90] |
| 134 | Users can manually set error flags based on any other criteria (position, etc...) in their problem module. As an example, the [wiki:u/ehansen/RT Rayleigh-Taylor Instability] has an analytic solution. Therefore, one can get a good estimate of where the mesh should be refining at any given time. In this simulation, the mesh started refining in the middle region where the initial interface is located, and the refinement region expanded upwards and downwards as the instability grew: [attachment:expanding_refinement.gif RT Expanding Refinement Region]. This is not the most efficient way to refine for this problem, but it gives an idea of how one can refine based on position and time. Here is the code so you can see precisely how this is done in a problem module: [attachment:problem.f90 RT problem.f90] |