Peano
Loading...
Searching...
No Matches
solvers.fv.actionsets.ProjectPatchOntoFaces.ProjectPatchOntoFaces Class Reference

Project patch data onto faces so we can reconstruct the halo layers later on. More...

Inheritance diagram for solvers.fv.actionsets.ProjectPatchOntoFaces.ProjectPatchOntoFaces:
Collaboration diagram for solvers.fv.actionsets.ProjectPatchOntoFaces.ProjectPatchOntoFaces:

Public Member Functions

 __init__ (self, solver, guard)
 
 get_action_set_name (self)
 

Detailed Description

Project patch data onto faces so we can reconstruct the halo layers later on.

This class is very similar to toolbox.blockstructured.api.ProjectPatchOntoFaces, but there are some delicate differences.

The big difference is that the projection also sets the isUpdated() flag and the UpdatedTimeStamp(). As the projection writes to these two updated records, it is important that you roll it over afterwards. This is done via the mapping RollOverUpdatedFace.

It is important to study this action set in combination with DynamicAMR. In the documentation of the latter I explain why we need the guard

not marker.hasBeenRefined()

if we want to support dynamic coarsening. See exahype2.solvers.fv.FV.add_actions_to_init_grid() for details on the ordering of the action sets.

Definition at line 10 of file ProjectPatchOntoFaces.py.

Constructor & Destructor Documentation

◆ __init__()

solvers.fv.actionsets.ProjectPatchOntoFaces.ProjectPatchOntoFaces.__init__ (   self,
  solver,
  guard 
)

Definition at line 30 of file ProjectPatchOntoFaces.py.

References api.ProjectPatchOntoFaces.ProjectPatchOntoFaces.__Template_TouchCellLastTime_Core, solvers.aderdg.kernels.AMRRoutines.AMRRoutines.d, solvers.aderdg.kernels.CellData.CellData.d, solvers.aderdg.kernels.DGMatrices.DGMatrices.d, solvers.aderdg.kernels.FusedSpaceTimePredictorVolumeIntegral.FusedSpaceTimePredictorVolumeIntegral.d, solvers.aderdg.kernels.Quadrature.Quadrature.d, solvers.fv.actionsets.HandleBoundary.HandleBoundary.d, solvers.fv.actionsets.RollOverUpdatedFace.RollOverUpdatedFace.d, solvers.limiting.kernels.Limiter.Limiter.d, solvers.limiting.kernels.Quadrature.Quadrature.d, tracer.DumpTracerIntoDatabase.DumpTracerIntoDatabase.d, tracer.InsertParticlesFromFile.InsertParticlesFromFile.d, exahype2.api.fv.actionsets.ApplyDirichletBoundaryConditions.ApplyDirichletBoundaryConditions.d, exahype2.api.fv.actionsets.RollOverUpdatedFace.RollOverUpdatedFace.d, exahype2.api.rkfd4.actionsets.ApplyDirichletBoundaryConditions.ApplyDirichletBoundaryConditions.d, exahype2.api.rkfd4.actionsets.RollOverUpdatedFace.RollOverUpdatedFace.d, exaparty.api.actionsets.Cleanup.Cleanup.d, exaparty.api.actionsets.DynamicMeshRefinementAnalysis.DynamicMeshRefinementAnalysis.d, exaparty.api.actionsets.ScatterGlobalMemory.ScatterGlobalMemory.d, exaparty.api.actionsets.SynchroniseVerticesWithPreviousMeshSweep.SynchroniseVerticesWithPreviousMeshSweep.d, exaparty.api.actionsets.UpdateParticleMarker.UpdateParticleMarker.d, exaparty.api.boundaryconditions.Fixed.Fixed.d, solvers.api.actionsets.CollocatedMGSingleThreaded.UpdateSolution.UpdateSolution.d, solvers.api.actionsets.CollocatedMGSolver.InitDofs.InitDofsCollocatedMG.d, solvers.api.actionsets.CollocatedMGSolver.Prolongation.Prolongation.d, solvers.api.actionsets.CollocatedMGSolver.ResetAndUpdateResidual.ResetAndUpdateResidual.d, solvers.api.actionsets.CollocatedMGSolver.Restriction.Restriction.d, solvers.api.actionsets.CollocatedMGSolver.UpdateSolution.UpdateSolution.d, solvers.api.actionsets.CollocatedSolver.InitDofs.InitDofsCollocated.d, solvers.api.actionsets.CollocatedSolver.ResetAndUpdateResidual.ResetAndUpdateResidual.d, solvers.api.actionsets.CollocatedSolver.UpdateSolution.UpdateSolution.d, ProjectResidualsAndDiagonalOntoFacets.ProjectResidualsAndDiagonalOntoFacets.d, UpdateCell.UpdateCell.d, UpdateFacets.UpdateFacets.d, solvers.api.actionsets.DGCGCoupling.AbstractDGCGCoupling.d, solvers.api.actionsets.DGCGCoupling.AdditiveDGCGCoupling.d, solvers.api.actionsets.DGCGCoupling.MultiplicativeDGCGCoupling.d, solvers.api.actionsets.DGSolver.ProjectIntoCellAndUpdateCellSolution.ProjectIntoCellAndUpdateCellSolution.d, solvers.api.actionsets.DGSolver.ProjectIntoCellAndUpdateCellSolutionWithTasks.ProjectIntoCellAndUpdateCellSolutionWithTasks.d, solvers.api.actionsets.DGSolver.ProjectOntoFaces.ProjectOntoFaces.d, solvers.api.actionsets.DGSolver.UpdateFaceSolution.UpdateFaceSolution.d, solvers.api.actionsets.DGSolver.UpdateResidual.UpdateResidual.d, solvers.api.actionsets.DGSolver.UpdateResidualWithTasks.UpdateResidualWithTasks.d, solvers.api.actionsets.InitHigherOrderDofs.InitHigherOrderDofs.d, solvers.api.actionsets.PlotDGDataInPeanoBlockFormat.PlotDGDataInPeanoBlockFormat.d, solvers.api.actionsets.PlotDGPatchesInPeanoBlockFormat.PlotDGPatchesInPeanoBlockFormat.d, solvers.api.actionsets.PlotVertexDataInPeanoBlockFormat.PlotVertexDataInPeanoBlockFormat.d, archive_AssemblePETSCMatrix.AssemblePETSCMatrixOnCellsAndFaces.d, api.actionsets.EnumerateDoFs.EnumerateDoFs.d, api.actionsets.ImposeDirichletBoundaryConditions.ImposeDirichletBoundaryConditions.d, api.actionsets.ImposeDirichletBoundaryConditionsWithInteriorPenaltyMethod.ImposeDirichletBoundaryConditionsWithInteriorPenaltyMethod.d, api.actionsets.InitCellDoFs.InitCellDoFs.d, api.actionsets.InitFaceDoFs.InitFaceDoFs.d, api.actionsets.InitPetsc.SendDofsToVertices.d, api.actionsets.InitVertexDoFs.InitVertexDoFs.d, api.actionsets.PlotDGDataInPeanoBlockFormat.PlotDGDataInPeanoBlockFormat.d, api.actionsets.PlotExactSolution.PlotExactSolution.d, api.actionsets.ProjectPETScSolutionBackOntoMesh.ProjectPETScSolutionOnCellsBackOntoMesh.d, api.actionsets.ProjectPETScSolutionBackOntoMesh.ProjectPETScSolutionOnVerticesBackOntoMesh.d, api.solvers.CollocatedLowOrderDiscretisation.AssemblePetscMatrix.d, api.solvers.DiscontinuousGalerkinDiscretisation.AssemblePetscMatrix.d, peano4.api.datamodel.ModelToDataRepository.ModelToDataRepository.d, peano4.api.output.Constants.Constants.d, peano4.api.output.Jinja2TemplatedHeaderFile.Jinja2TemplatedHeaderFile.d, peano4.api.output.Jinja2TemplatedHeaderImplementationFilePair.Jinja2TemplatedHeaderImplementationFilePair.d, peano4.api.output.Jinja2TemplateStringHeaderImplementationFilePair.Jinja2TemplateStringHeaderImplementationFilePair.d, peano4.api.output.Makefile.Makefile.d, peano4.api.output.Observer.Observer.d, peano4.api.output.TemplatedHeaderFile.TemplatedHeaderFile.d, peano4.api.output.TemplatedHeaderImplementationFilePair.TemplatedHeaderImplementationFilePair.d, peano4.api.runner.DefaultSequence.DefaultSequence.d, peano4.api.solversteps.StepsToStepRepository.StepsToStepRepository.d, peano4.api.toolbox.CreateRegularGrid.CreateRegularGrid.d, peano4.api.toolbox.multigrid.cellbased.ScalarJacobiWithRediscretisation.ScalarJacobiWithRediscretisation.d, peano4.api.toolbox.multigrid.MatrixFreeJacobi.MatrixFreeJacobi.d, peano4.api.toolbox.multigrid.vertexbased.ScalarJacobiWithRediscretisation.ScalarJacobiWithRediscretisation.d, peano4.api.toolbox.particles.api.AbstractUpdateParticleGridAssociation.AbstractUpdateParticleGridAssociation.d, peano4.api.toolbox.particles.api.UpdateParallelState.UpdateParallelState.d, peano4.api.toolbox.particles.api.UpdateParticleGridAssociation_BucketSort.UpdateParticleGridAssociation_BucketSort.d, peano4.api.toolbox.particles.GatherParticlesInMemoryPool.GatherParticlesInMemoryPool.d, peano4.api.toolbox.particles.InsertParticlesAlongCartesianLayoutIntoUnrefinedCells.InsertParticlesAlongCartesianLayoutIntoUnrefinedCells.d, peano4.api.toolbox.particles.InsertParticlesByCoordinates.InsertParticlesByCoordinates.d, peano4.api.toolbox.particles.InsertRandomParticlesIntoUnrefinedCells.InsertRandomParticlesIntoUnrefinedCells.d, peano4.api.toolbox.particles.ParticleAMR.ParticleAMR.d, peano4.api.toolbox.particles.ParticleTreeAnalysis.ParticleTreeAnalysis.d, peano4.api.toolbox.particles.PlotParticlesInVTKFormat.PlotParticlesInVTKFormat.d, peano4.api.toolbox.particles.UpdateParticle_MultiLevelInteraction_Sets.UpdateParticle_MultiLevelInteraction_Sets.d, peano4.api.toolbox.particles.UpdateParticle_MultiLevelInteraction_StackOfLists.UpdateParticle_MultiLevelInteraction_StackOfLists.d, peano4.api.toolbox.particles.UpdateParticle_MultiLevelInteraction_StackOfLists_ContiguousParticles.UpdateParticle_MultiLevelInteraction_StackOfLists_ContiguousParticles.d, peano4.api.toolbox.particles.UpdateParticle_SingleLevelInteraction.UpdateParticle_SingleLevelInteraction.d, peano4.api.toolbox.particles.UpdateParticle_SingleLevelInteraction_ContiguousParticles.UpdateParticle_SingleLevelInteraction_ContiguousParticles.d, peano4.api.toolbox.PlotCellDataInPeanoBlockFormat.PlotCellDataInPeanoBlockFormat.d, peano4.api.toolbox.PlotGridInPeanoBlockFormat.PlotGridInPeanoBlockFormat.d, peano4.api.toolbox.PlotVertexDataInPeanoBlockFormat.PlotVertexDataInPeanoBlockFormat.d, api.BackupPatchOverlap.BackupPatchOverlap.d, api.DynamicAMR.DynamicAMR.d, api.InterpolateAndRestrictCells.InterpolateAndRestrictCells.d, api.InterpolateHangingFaces.InterpolateHangingFaces.d, api.PlotPatchesInPeanoBlockFormat.PlotPatchesInPeanoBlockFormat.d, api.PlotPatchesOverFacesInPeanoBlockFormat.PlotPatchesOverFacesInPeanoBlockFormat.d, api.ProjectPatchOntoFaces.ProjectPatchOntoFaces.d, api.RestrictHangingFaces.RestrictHangingFaces.d, DGCGCoupling.Test4Coupling.d, DGCGCoupling.Test5Coupling.d, DGCGCoupling.Test7Coupling.d, initCollocatedRandom.InitDofsCollocatedRandomRhs.d, initCollocatedRandom.InitCollocatedTest4.d, initCollocatedRandom.InitCollocatedTest5.d, InitDG.InitDofsDGTest1.d, InitDG.InitDofsIntermediatePhaseTest1.d, InitDG.InitDofsDGTest7.d, and test8.InitDofsTest8.d.

Member Function Documentation

◆ get_action_set_name()

solvers.fv.actionsets.ProjectPatchOntoFaces.ProjectPatchOntoFaces.get_action_set_name (   self)

Definition at line 53 of file ProjectPatchOntoFaces.py.


The documentation for this class was generated from the following file: