proteus 1.9.0
C/C++/Fortran libraries
Loading...
Searching...
No Matches
SizeField.cpp File Reference
#include "MeshAdaptPUMI.h"
#include <apf.h>
#include <apfVector.h>
#include <apfMesh.h>
#include <apfShape.h>
#include <apfDynamicVector.h>
#include <apfCavityOp.h>
#include <string>
#include <iostream>
#include <sstream>
#include <PCU.h>
#include <samElementCount.h>
#include <queue>
#include <algorithm>
Include dependency graph for SizeField.cpp:

Go to the source code of this file.

Classes

struct  edgeWalkerInfo
struct  SortingStruct
struct  Smoother

Functions

void gradeAnisoMesh (apf::Mesh *m, double gradingFactor, PCU_t PCUObj)
void gradeAspectRatio (apf::Mesh *m, int idx, double gradingFactor, PCU_t PCUObj)
int intersectsInterface (apf::MeshEntity *edge, apf::Field *levelSet)
int checkForPropagation (apf::Mesh *m, edgeWalkerInfo inputObject)
int BFS_propagation (apf::Mesh *m, std::queue< edgeWalkerInfo > &markedVertices, PCU_t PCUObj)
void errorAverageToEntity (apf::Field *ef, apf::Field *vf, apf::Field *err, apf::MeshEntity *ent)
void getTargetError (apf::Mesh *m, apf::Field *errField, double &target_error, double totalError, PCU_t PCUObj)
int gradeSizeModify (apf::Mesh *m, double gradingFactor, double size[2], apf::Adjacent edgAdjVert, apf::Adjacent vertAdjEdg, std::queue< apf::MeshEntity * > &markedEdges, apf::MeshTag *isMarked, int fieldType, int vecPos, int idxFlag, PCU_t PCUObj)
void markEdgesInitial (apf::Mesh *m, std::queue< apf::MeshEntity * > &markedEdges, double gradingFactor)
int serialGradation (apf::Mesh *m, std::queue< apf::MeshEntity * > &markedEdges, double gradingFactor, PCU_t PCUObj)
void gradeAnisoMesh (apf::Mesh *m, PCU_t PCUObj)
void gradeAspectRatio (apf::Mesh *m, int idx, PCU_t PCUObj)

Function Documentation

◆ BFS_propagation()

int BFS_propagation ( apf::Mesh * m,
std::queue< edgeWalkerInfo > & markedVertices,
PCU_t PCUObj )

Definition at line 224 of file SizeField.cpp.

◆ checkForPropagation()

int checkForPropagation ( apf::Mesh * m,
edgeWalkerInfo inputObject )

Definition at line 191 of file SizeField.cpp.

◆ errorAverageToEntity()

void errorAverageToEntity ( apf::Field * ef,
apf::Field * vf,
apf::Field * err,
apf::MeshEntity * ent )

Definition at line 618 of file SizeField.cpp.

◆ getTargetError()

void getTargetError ( apf::Mesh * m,
apf::Field * errField,
double & target_error,
double totalError,
PCU_t PCUObj )

Definition at line 1139 of file SizeField.cpp.

◆ gradeAnisoMesh() [1/2]

void gradeAnisoMesh ( apf::Mesh * m,
double gradingFactor,
PCU_t PCUObj )

Definition at line 1957 of file SizeField.cpp.

◆ gradeAnisoMesh() [2/2]

void gradeAnisoMesh ( apf::Mesh * m,
PCU_t PCUObj )

Definition at line 1797 of file SizeField.cpp.

◆ gradeAspectRatio() [1/2]

void gradeAspectRatio ( apf::Mesh * m,
int idx,
double gradingFactor,
PCU_t PCUObj )

Definition at line 2054 of file SizeField.cpp.

◆ gradeAspectRatio() [2/2]

void gradeAspectRatio ( apf::Mesh * m,
int idx,
PCU_t PCUObj )

Definition at line 1894 of file SizeField.cpp.

◆ gradeSizeModify()

int gradeSizeModify ( apf::Mesh * m,
double gradingFactor,
double size[2],
apf::Adjacent edgAdjVert,
apf::Adjacent vertAdjEdg,
std::queue< apf::MeshEntity * > & markedEdges,
apf::MeshTag * isMarked,
int fieldType,
int vecPos,
int idxFlag,
PCU_t PCUObj )

Definition at line 1512 of file SizeField.cpp.

◆ intersectsInterface()

int intersectsInterface ( apf::MeshEntity * edge,
apf::Field * levelSet )

Definition at line 164 of file SizeField.cpp.

◆ markEdgesInitial()

void markEdgesInitial ( apf::Mesh * m,
std::queue< apf::MeshEntity * > & markedEdges,
double gradingFactor )

Definition at line 1598 of file SizeField.cpp.

◆ serialGradation()

int serialGradation ( apf::Mesh * m,
std::queue< apf::MeshEntity * > & markedEdges,
double gradingFactor,
PCU_t PCUObj )

Definition at line 1628 of file SizeField.cpp.