proteus  1.8.1
C/C++/Fortran libraries
Classes | Functions
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)
 
void gradeAspectRatio (apf::Mesh *m, int idx, double gradingFactor)
 
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)
 
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)
 
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)
 
void markEdgesInitial (apf::Mesh *m, std::queue< apf::MeshEntity * > &markedEdges, double gradingFactor)
 
int serialGradation (apf::Mesh *m, std::queue< apf::MeshEntity * > &markedEdges, double gradingFactor)
 
void gradeAnisoMesh (apf::Mesh *m)
 
void gradeAspectRatio (apf::Mesh *m, int idx)
 

Function Documentation

◆ BFS_propagation()

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

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 
)

Definition at line 1139 of file SizeField.cpp.

◆ gradeAnisoMesh() [1/2]

void gradeAnisoMesh ( apf::Mesh *  m)

Definition at line 1796 of file SizeField.cpp.

◆ gradeAnisoMesh() [2/2]

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

Definition at line 1956 of file SizeField.cpp.

◆ gradeAspectRatio() [1/2]

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

Definition at line 1893 of file SizeField.cpp.

◆ gradeAspectRatio() [2/2]

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

Definition at line 2053 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 
)

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 1597 of file SizeField.cpp.

◆ serialGradation()

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

Definition at line 1627 of file SizeField.cpp.