IgANet
IgANets - Isogeometric Analysis Networks
Loading...
Searching...
No Matches
stokes< Optimizer, GeometryMap, Variable > Class Template Reference

Specialization of the abstract IgANet class for Stokes's equation. More...

Inheritance diagram for stokes< Optimizer, GeometryMap, Variable >:
iganet::IgANet< Optimizer, GeometryMap, Variable, iganet::IgABaseNoRefData > iganet::IgANetCustomizable< GeometryMap, Variable > iganet::utils::Serializable iganet::utils::FullQualifiedName

Public Member Functions

template<typename... Args>
 stokes (std::vector< int64_t > &&layers, std::vector< std::vector< std::any > > &&activations, Args &&...args)
 Constructor.
 
auto const & collPts () const
 Returns a constant reference to the collocation points.
 
bool epoch (int64_t epoch) override
 Initializes the epoch.
 
torch::Tensor loss (const torch::Tensor &outputs, int64_t epoch) override
 Computes the loss function.
 
auto & ref ()
 Returns a non-constant reference to the reference solution.
 
auto const & ref () const
 Returns a constant reference to the reference solution.
 
- Public Member Functions inherited from iganet::IgANet< Optimizer, GeometryMap, Variable, iganet::IgABaseNoRefData >
 IgANet (IgANetOptions defaults={}, iganet::Options< typename Base::value_type > options=iganet::Options< typename Base::value_type >{})
 Default constructor.
 

Private Types

using Base = iganet::IgANet< Optimizer, GeometryMap, Variable, iganet::IgABaseNoRefData >
 Type of the base class.
 
using Customizable = iganet::IgANetCustomizable< GeometryMap, Variable >
 Type of the customizable class.
 

Private Attributes

Base::variable_collPts_type collPts_
 Collocation points.
 
Customizable::variable_interior_coeff_indices_type G_coeff_indices_
 Coefficient indices of the geometry map.
 
Customizable::variable_interior_knot_indices_type G_knot_indices_
 Knot indices of the geometry map.
 
Variable ref_
 Reference solution.
 
Customizable::variable_interior_coeff_indices_type var_coeff_indices_
 Coefficient indices of variables.
 
Customizable::variable_interior_knot_indices_type var_knot_indices_
 Knot indices of variables.
 

Additional Inherited Members

- Public Types inherited from iganet::IgANet< Optimizer, GeometryMap, Variable, iganet::IgABaseNoRefData >
using Base = iganet::IgABaseNoRefData< GeometryMap, Variable >
 Base type.
 
using optimizer_type = Optimizer
 Type of the optimizer.
 
- Public Types inherited from iganet::IgANetCustomizable< GeometryMap, Variable >
using geometryMap_boundary_coeff_indices_type = decltype(std::declval< GeometryMap >() .template find_coeff_indices< functionspace::boundary >(std::declval< typename GeometryMap::boundary_eval_type >()))
 Type of the coefficient indices of geometry type at the boundary.
 
using geometryMap_boundary_knot_indices_type = decltype(std::declval< GeometryMap >() .template find_knot_indices< functionspace::boundary >(std::declval< typename GeometryMap::boundary_eval_type >()))
 Type of the knot indices of the geometry map at the boundary.
 
using geometryMap_interior_coeff_indices_type = decltype(std::declval< GeometryMap >() .template find_coeff_indices< functionspace::interior >(std::declval< typename GeometryMap::eval_type >()))
 Type of the coefficient indices of geometry type in the interior.
 
using geometryMap_interior_knot_indices_type = decltype(std::declval< GeometryMap >() .template find_knot_indices< functionspace::interior >(std::declval< typename GeometryMap::eval_type >()))
 Type of the knot indices of the geometry map in the interior.
 
using variable_boundary_coeff_indices_type = decltype(std::declval< Variable >() .template find_coeff_indices< functionspace::boundary >(std::declval< typename Variable::boundary_eval_type >()))
 Type of the coefficient indices of variable type at the boundary.
 
using variable_boundary_knot_indices_type = decltype(std::declval< Variable >() .template find_knot_indices< functionspace::boundary >(std::declval< typename Variable::boundary_eval_type >()))
 Type of the knot indices of boundary_eval_type type at the boundary.
 
using variable_interior_coeff_indices_type = decltype(std::declval< Variable >() .template find_coeff_indices< functionspace::interior >(std::declval< typename Variable::eval_type >()))
 Type of the coefficient indices of variable type in the interior.
 
using variable_interior_knot_indices_type = decltype(std::declval< Variable >() .template find_knot_indices< functionspace::interior >(std::declval< typename Variable::eval_type >()))
 Type of the knot indices of the variables in the interior.
 
- Protected Attributes inherited from iganet::IgANet< Optimizer, GeometryMap, Variable, iganet::IgABaseNoRefData >
IgANetGenerator< typename Base::value_typenet_
 IgANet generator.
 
Optimizer opt_
 Optimizer.
 
IgANetOptions options_
 Options.
 

Detailed Description

template<typename Optimizer, typename GeometryMap, typename Variable>
class stokes< Optimizer, GeometryMap, Variable >

Specialization of the abstract IgANet class for Stokes's equation.

Member Typedef Documentation

◆ Base

template<typename Optimizer , typename GeometryMap , typename Variable >
using stokes< Optimizer, GeometryMap, Variable >::Base = iganet::IgANet<Optimizer, GeometryMap, Variable, iganet::IgABaseNoRefData>
private

Type of the base class.

◆ Customizable

template<typename Optimizer , typename GeometryMap , typename Variable >
using stokes< Optimizer, GeometryMap, Variable >::Customizable = iganet::IgANetCustomizable<GeometryMap, Variable>
private

Type of the customizable class.

Constructor & Destructor Documentation

◆ stokes()

template<typename Optimizer , typename GeometryMap , typename Variable >
template<typename... Args>
stokes< Optimizer, GeometryMap, Variable >::stokes ( std::vector< int64_t > &&  layers,
std::vector< std::vector< std::any > > &&  activations,
Args &&...  args 
)
inline

Constructor.

Member Function Documentation

◆ collPts()

template<typename Optimizer , typename GeometryMap , typename Variable >
auto const & stokes< Optimizer, GeometryMap, Variable >::collPts ( ) const
inline

Returns a constant reference to the collocation points.

◆ epoch()

template<typename Optimizer , typename GeometryMap , typename Variable >
bool stokes< Optimizer, GeometryMap, Variable >::epoch ( int64_t  epoch)
inlineoverridevirtual

Initializes the epoch.

Parameters
[in]epochEpoch number

Implements iganet::IgANet< Optimizer, GeometryMap, Variable, iganet::IgABaseNoRefData >.

◆ loss()

template<typename Optimizer , typename GeometryMap , typename Variable >
torch::Tensor stokes< Optimizer, GeometryMap, Variable >::loss ( const torch::Tensor &  outputs,
int64_t  epoch 
)
inlineoverridevirtual

Computes the loss function.

Parameters
[in]outputsOutput of the network
[in]epochEpoch number

Implements iganet::IgANet< Optimizer, GeometryMap, Variable, iganet::IgABaseNoRefData >.

◆ ref() [1/2]

template<typename Optimizer , typename GeometryMap , typename Variable >
auto & stokes< Optimizer, GeometryMap, Variable >::ref ( )
inline

Returns a non-constant reference to the reference solution.

◆ ref() [2/2]

template<typename Optimizer , typename GeometryMap , typename Variable >
auto const & stokes< Optimizer, GeometryMap, Variable >::ref ( ) const
inline

Returns a constant reference to the reference solution.

Member Data Documentation

◆ collPts_

template<typename Optimizer , typename GeometryMap , typename Variable >
Base::variable_collPts_type stokes< Optimizer, GeometryMap, Variable >::collPts_
private

Collocation points.

◆ G_coeff_indices_

template<typename Optimizer , typename GeometryMap , typename Variable >
Customizable::variable_interior_coeff_indices_type stokes< Optimizer, GeometryMap, Variable >::G_coeff_indices_
private

Coefficient indices of the geometry map.

◆ G_knot_indices_

template<typename Optimizer , typename GeometryMap , typename Variable >
Customizable::variable_interior_knot_indices_type stokes< Optimizer, GeometryMap, Variable >::G_knot_indices_
private

Knot indices of the geometry map.

◆ ref_

template<typename Optimizer , typename GeometryMap , typename Variable >
Variable stokes< Optimizer, GeometryMap, Variable >::ref_
private

Reference solution.

◆ var_coeff_indices_

template<typename Optimizer , typename GeometryMap , typename Variable >
Customizable::variable_interior_coeff_indices_type stokes< Optimizer, GeometryMap, Variable >::var_coeff_indices_
private

Coefficient indices of variables.

◆ var_knot_indices_

template<typename Optimizer , typename GeometryMap , typename Variable >
Customizable::variable_interior_knot_indices_type stokes< Optimizer, GeometryMap, Variable >::var_knot_indices_
private

Knot indices of variables.


The documentation for this class was generated from the following file: