Page MenuHomec4science

laminate_hemogenization.cc
No OneTemporary

File Metadata

Created
Wed, Nov 27, 14:37

laminate_hemogenization.cc

/**
* @file lamminate_hemogenization.hh
*
* @author Ali Falsafi <ali.falsafi@epfl.ch>
*
* @date 28 Sep 2018
*
* @brief Base class for materials written for µSpectre specifically. These
* can take full advantage of the configuration-change utilities of
* µSpectre. The user can inherit from them to define new constitutive
* laws and is merely required to provide the methods for computing the
* second Piola-Kirchhoff stress and Tangent. This class uses the
* "curiously recurring template parameter" to avoid virtual calls.
*
* Copyright © 2017 Till Junge
*
* µSpectre is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation, either version 3, or (at
* your option) any later version.
*
* µSpectre is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GNU Emacs; see the file COPYING. If not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include "common/geometry.hh"
#include "common/common.hh"
#include "material/laminate_hemogenization.hh"
namespace muSpectre{
template <Dim_t DimS>
LaminateHemogenization<DimS>::LaminateHemogenization(Strain_t F_coord_inp,
Function_t mat_1_stress_eval,
Function_t mat_2_stress_eval,
Vec_t normal_vec_inp,
Real ratio_inp,
Ccoord pixel_inp,
Real tol):
F_coord{F_coord_inp},
mat_1_stress_eval{mat_1_stress_eval},
mat_2_stress_eval{mat_2_stress_eval},
normal_vec{ normal_vec_inp},
ratio{ratio_inp},
pixel{pixel_inp},
tol{rol_inp}
{}
/* ---------------------------------------------------------------------- */
template class LaminateHemogenization<twoD>;
template class LaminateHemogenization<threeD>;
} //muSpectre

Event Timeline