Rheolef
7.2
an efficient C++ finite element environment
Loading...
Searching...
No Matches
adapt.h
Go to the documentation of this file.
1
#ifndef _RHEO_ADAPT_OPTION_H
2
#define _RHEO_ADAPT_OPTION_H
3
//
4
// This file is part of Rheolef.
5
//
6
// Copyright (C) 2000-2009 Pierre Saramito <Pierre.Saramito@imag.fr>
7
//
8
// Rheolef is free software; you can redistribute it and/or modify
9
// it under the terms of the GNU General Public License as published by
10
// the Free Software Foundation; either version 2 of the License, or
11
// (at your option) any later version.
12
//
13
// Rheolef is distributed in the hope that it will be useful,
14
// but WITHOUT ANY WARRANTY; without even the implied warranty of
15
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
// GNU General Public License for more details.
17
//
18
// You should have received a copy of the GNU General Public License
19
// along with Rheolef; if not, write to the Free Software
20
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21
//
22
// =========================================================================
23
24
namespace
rheolef
{
139
}
// namespace rheolef
140
141
#include "rheolef/field.h"
142
143
namespace
rheolef
{
144
146
// [verbatim_adapt_option]
147
struct
adapt_option
{
148
typedef
std::vector<int>::size_type
size_type
;
149
std::string
generator
;
150
bool
isotropic
;
151
Float
err
;
152
Float
errg
;
153
Float
hcoef
;
154
Float
hmin
;
155
Float
hmax
;
156
Float
ratio
;
157
Float
cutoff
;
158
size_type
n_vertices_max
;
159
size_type
n_smooth_metric
;
160
bool
splitpbedge
;
161
Float
thetaquad
;
162
Float
anisomax
;
163
bool
clean
;
164
std::string
additional
;
165
bool
double_precision
;
166
Float
anglecorner
;
// angle below which bamg considers 2 consecutive edge to be part of
167
// the same spline
168
adapt_option
() :
169
generator
(
""
),
170
isotropic
(true),
err
(1e-2),
errg
(1e-1),
hcoef
(1),
hmin
(0.0001),
hmax
(0.3),
ratio
(0),
cutoff
(1e-7),
171
n_vertices_max
(50000),
n_smooth_metric
(1),
172
splitpbedge
(true),
thetaquad
(
std
::numeric_limits<
Float
>::max()),
173
anisomax
(1e6),
clean
(false),
additional
(
"-RelError"
),
double_precision
(false),
174
anglecorner
(0)
175
{}
176
};
177
// [verbatim_adapt_option]
178
179
// [verbatim_adapt]
180
template
<
class
T,
class
M>
181
geo_basic<T,M>
182
adapt
(
183
const
field_basic<T,M>&
phi
,
184
const
adapt_option& options = adapt_option());
185
// [verbatim_adapt]
186
187
// backward compatibility:
188
using
adapt_option_type
=
adapt_option
;
189
190
}
// namespace rheolef
191
#endif
// _RHEO_ADAPT_OPTION_H
Float
see the Float page for the full documentation
rheolef
This file is part of Rheolef.
Definition
compiler_eigen.h:39
rheolef::adapt
geo_basic< T, M > adapt(const field_basic< T, M > &uh, const adapt_option &opts)
adapt(uh,opts): see the adapt page for the full documentation
Definition
adapt.cc:179
std
STL namespace.
phi
Definition
phi.h:25
rheolef::adapt_option
adapt_option: see the adapt page for the full documentation
Definition
adapt.h:147
rheolef::adapt_option::err
Float err
Definition
adapt.h:151
rheolef::adapt_option::generator
std::string generator
Definition
adapt.h:149
rheolef::adapt_option::cutoff
Float cutoff
Definition
adapt.h:157
rheolef::adapt_option::anglecorner
Float anglecorner
Definition
adapt.h:166
rheolef::adapt_option::thetaquad
Float thetaquad
Definition
adapt.h:161
rheolef::adapt_option::n_smooth_metric
size_type n_smooth_metric
Definition
adapt.h:159
rheolef::adapt_option::splitpbedge
bool splitpbedge
Definition
adapt.h:160
rheolef::adapt_option::n_vertices_max
size_type n_vertices_max
Definition
adapt.h:158
rheolef::adapt_option::hmax
Float hmax
Definition
adapt.h:155
rheolef::adapt_option::double_precision
bool double_precision
Definition
adapt.h:165
rheolef::adapt_option::ratio
Float ratio
Definition
adapt.h:156
rheolef::adapt_option::adapt_option
adapt_option()
Definition
adapt.h:168
rheolef::adapt_option::anisomax
Float anisomax
Definition
adapt.h:162
rheolef::adapt_option::clean
bool clean
Definition
adapt.h:163
rheolef::adapt_option::size_type
std::vector< int >::size_type size_type
Definition
adapt.h:148
rheolef::adapt_option::additional
std::string additional
Definition
adapt.h:164
rheolef::adapt_option::hcoef
Float hcoef
Definition
adapt.h:153
rheolef::adapt_option::hmin
Float hmin
Definition
adapt.h:154
rheolef::adapt_option::errg
Float errg
Definition
adapt.h:152
rheolef::adapt_option::isotropic
bool isotropic
Definition
adapt.h:150