NEMoSys
0.63.0
A modular, extensible resource with robust automated mesh generation, mesh quality analysis, adaptive mesh refinement, and data transfer between arbitrary meshes.
ValSizeField.H
Go to the documentation of this file.
1
/*******************************************************************************
2
* Promesh *
3
* Copyright (C) 2022, IllinoisRocstar LLC. All rights reserved. *
4
* *
5
* Promesh is the property of IllinoisRocstar LLC. *
6
* *
7
* IllinoisRocstar LLC *
8
* Champaign, IL *
9
* www.illinoisrocstar.com *
10
* promesh@illinoisrocstar.com *
11
*******************************************************************************/
12
/*******************************************************************************
13
* This file is part of Promesh *
14
* *
15
* This version of Promesh is free software: you can redistribute it and/or *
16
* modify it under the terms of the GNU Lesser General Public License as *
17
* published by the Free Software Foundation, either version 3 of the License, *
18
* or (at your option) any later version. *
19
* *
20
* Promesh is distributed in the hope that it will be useful, but WITHOUT ANY *
21
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS *
22
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more *
23
* details. *
24
* *
25
* You should have received a copy of the GNU Lesser General Public License *
26
* along with this program. If not, see <https://www.gnu.org/licenses/>. *
27
* *
28
*******************************************************************************/
29
#ifndef NEMOSYS_VALSIZEFIELD_H_
30
#define NEMOSYS_VALSIZEFIELD_H_
31
32
#include "nemosys_export.h"
33
#include "
SizeFieldGeneration/SizeFieldGen.H
"
34
35
namespace
NEM
{
36
namespace
ADP {
37
38
class
NEMOSYS_EXPORT
ValSizeField
:
public
SizeFieldBase
{
39
// constructors and destructors
40
public
:
41
ValSizeField
(vtkDataSet *_ds,
int
arrayID,
double
_dev_mult,
bool
_maxIsmin);
42
43
~ValSizeField
()
override
{
44
std::cout <<
"ValSizeField destroyed"
<< std::endl;
45
}
46
47
// methods
48
public
:
49
// computes value of point data at a cell center using average of data
50
// at points defining cell
51
static
std::vector<double> computeValAtCell(vtkIdList *cell_point_ids,
52
vtkDataArray *da);
53
// compute value of point data at center of each cell
54
static
std::vector<std::vector<double>> computeValAtAllCells(
55
vtkDataSet *ds, vtkDataArray *da);
56
// compute L2 norm of value of point data at center of each cell
57
static
std::vector<double> computeL2ValAtAllCells(vtkDataSet *ds,
58
vtkDataArray *da);
59
// compute size field and insert as cell data into mesh's dataSet
60
void
computeSizeField(vtkDataArray *da)
override
;
61
};
62
63
}
// namespace ADP
64
}
// namespace NEM
65
66
#endif // NEMOSYS_VALSIZEFIELD_H_
NEM::ADP::ValSizeField::~ValSizeField
~ValSizeField() override
Definition:
ValSizeField.H:43
SizeFieldGen.H
NEM
Definition:
AutoVerificationDriver.C:38
NEM::ADP::ValSizeField
Definition:
ValSizeField.H:38
NEM::ADP::SizeFieldBase
Definition:
SizeFieldGen.H:41
include
SizeFieldGeneration
ValSizeField.H
Generated on Wed Jan 26 2022 16:40:02 for NEMoSys by
1.8.13