MAST
Multidisciplinary-design Adaptation and Sensitivity Toolkit (MAST)
heaviside_elem_homogenization_function.h
Go to the documentation of this file.
1
/*
2
* MAST: Multidisciplinary-design Adaptation and Sensitivity Toolkit
3
* Copyright (C) 2013-2020 Manav Bhatia and MAST authors
4
*
5
* This library is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU Lesser General Public
7
* License as published by the Free Software Foundation; either
8
* version 2.1 of the License, or (at your option) any later version.
9
*
10
* This library is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
* Lesser General Public License for more details.
14
*
15
* You should have received a copy of the GNU Lesser General Public
16
* License along with this library; if not, write to the Free Software
17
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
*/
19
20
#ifndef __mast__heaviside_elem_homogenized_density_function_h__
21
#define __mast__heaviside_elem_homogenized_density_function_h__
22
23
// MAST includes
24
#include "
level_set/homogenized_density_function_base.h
"
25
26
27
namespace
MAST
{
28
29
class
HeavisideElemHomogenizedDensityFunction
:
30
public
MAST::HomogenizedDensityFunctionBase
{
31
32
public
:
33
34
HeavisideElemHomogenizedDensityFunction
(
const
std::string& nm);
35
36
virtual
~HeavisideElemHomogenizedDensityFunction
();
37
44
void
set_smoothing_width
(
Real
w) {
_width
= w;}
45
46
virtual
void
initialize_element_volume_fractions
();
47
48
virtual
void
initialize_element_volume_fraction_sensitivity
(
const
MAST::FunctionBase
& f);
49
50
protected
:
51
52
53
Real
_width
;
54
};
55
}
56
57
#endif // __mast__heaviside_elem_homogenized_density_function_h__
58
MAST::FunctionBase
Definition:
function_base.h:35
MAST::HeavisideElemHomogenizedDensityFunction::HeavisideElemHomogenizedDensityFunction
HeavisideElemHomogenizedDensityFunction(const std::string &nm)
Definition:
heaviside_elem_homogenization_function.cpp:34
Real
libMesh::Real Real
Definition:
mast_data_types.h:32
MAST::HeavisideElemHomogenizedDensityFunction
Definition:
heaviside_elem_homogenization_function.h:29
MAST::HeavisideElemHomogenizedDensityFunction::initialize_element_volume_fractions
virtual void initialize_element_volume_fractions()
Definition:
heaviside_elem_homogenization_function.cpp:50
MAST::HeavisideElemHomogenizedDensityFunction::_width
Real _width
Definition:
heaviside_elem_homogenization_function.h:53
MAST::HeavisideElemHomogenizedDensityFunction::initialize_element_volume_fraction_sensitivity
virtual void initialize_element_volume_fraction_sensitivity(const MAST::FunctionBase &f)
Definition:
heaviside_elem_homogenization_function.cpp:107
MAST::HomogenizedDensityFunctionBase
Definition:
homogenized_density_function_base.h:37
MAST::HeavisideElemHomogenizedDensityFunction::~HeavisideElemHomogenizedDensityFunction
virtual ~HeavisideElemHomogenizedDensityFunction()
Definition:
heaviside_elem_homogenization_function.cpp:43
MAST::HeavisideElemHomogenizedDensityFunction::set_smoothing_width
void set_smoothing_width(Real w)
width over which the approximate Heaviside function is smoothed.
Definition:
heaviside_elem_homogenization_function.h:44
homogenized_density_function_base.h
MAST
Definition:
flutter_root_base.h:27
src
level_set
heaviside_elem_homogenization_function.h
Generated on Fri Jul 24 2020 16:05:45 for MAST by
1.8.13