IgANet
IgANets - Isogeometric Analysis Networks
Loading...
Searching...
No Matches
iganet::IgABaseNoRefData< GeometryMap, Variable > Class Template Reference

IgA base class (no reference data) More...

#include </home/runner/work/iganet/iganet/include/igabase.hpp>

Inheritance diagram for iganet::IgABaseNoRefData< GeometryMap, Variable >:
iganet::IgABase< GeometryMap, Variable > iganet::IgASolver< GeometryMap, Variable >

Public Types

using geometryMap_collPts_type = std::pair< typename GeometryMap::eval_type, typename GeometryMap::boundary_eval_type >
 Type of the geometry map collocation points.
 
using geometryMap_type = GeometryMap
 Type of the geometry map function space(s)
 
using value_type = typename std::common_type< typename GeometryMap::value_type, typename Variable::value_type >::type
 Value type.
 
using variable_collPts_type = std::pair< typename Variable::eval_type, typename Variable::boundary_eval_type >
 Type of the variable collocation points.
 
using variable_type = Variable
 Type of the variable function space(s)
 

Public Member Functions

 IgABaseNoRefData (iganet::Options< value_type > options=iganet::Options< value_type >{})
 Default constructor.
 
GeometryMapG ()
 Returns a non-constant reference to the spline representation of the geometry map.
 
const GeometryMapG () const
 Returns a constant reference to the spline representation of the geometry map.
 
virtual geometryMap_collPts_type geometryMap_collPts (enum collPts collPts) const
 Returns the geometry map collocation points.
 
Variableu ()
 Returns a non-constant reference to the spline representation of the solution.
 
const Variableu () const
 Returns a constant reference to the spline representation of the solution.
 
virtual variable_collPts_type variable_collPts (enum collPts collPts) const
 Returns the variable collocation points.
 

Static Public Attributes

static bool constexpr has_GeometryMap = true
 Indicates whether this class provides a geometry map.
 
static bool constexpr has_RefData = false
 Indicates whether this class provides reference data.
 
static bool constexpr has_Solution = true
 Indicates whether this class provides a solution.
 

Protected Attributes

GeometryMap G_
 Spline representation of the geometry map.
 
Variable u_
 Spline representation of the solution.
 

Private Member Functions

template<std::size_t... GeometryMapNumCoeffs, size_t... Is, std::size_t... VariableNumCoeffs, size_t... Js>
 IgABaseNoRefData (std::tuple< std::array< int64_t, GeometryMapNumCoeffs >... > geometryMapNumCoeffs, std::index_sequence< Is... >, std::tuple< std::array< int64_t, VariableNumCoeffs >... > variableNumCoeffs, std::index_sequence< Js... >, iganet::Options< value_type > options=iganet::Options< value_type >{})
 Constructor: number of spline coefficients (different for Geometry and Variable types)
 
template<size_t... Is>
geometryMap_collPts_type geometryMap_collPts (enum collPts collPts, std::index_sequence< Is... >) const
 Returns the geometry map collocation points.
 
template<size_t... Is>
variable_collPts_type variable_collPts (enum collPts collPts, std::index_sequence< Is... >) const
 Returns the variable collocation points.
 

Detailed Description

template<typename GeometryMap, typename Variable>
class iganet::IgABaseNoRefData< GeometryMap, Variable >

IgA base class (no reference data)

This class implements the base functionality of IgA solvers and nets for the case that no reference solution is required

Member Typedef Documentation

◆ geometryMap_collPts_type

using iganet::IgABaseNoRefData< GeometryMap, Variable >::geometryMap_collPts_type = std::pair<typename GeometryMap::eval_type, typename GeometryMap::boundary_eval_type>

Type of the geometry map collocation points.

◆ geometryMap_type

Type of the geometry map function space(s)

◆ value_type

using iganet::IgABaseNoRefData< GeometryMap, Variable >::value_type = typename std::common_type<typename GeometryMap::value_type, typename Variable::value_type>::type

Value type.

◆ variable_collPts_type

using iganet::IgABaseNoRefData< GeometryMap, Variable >::variable_collPts_type = std::pair<typename Variable::eval_type, typename Variable::boundary_eval_type>

Type of the variable collocation points.

◆ variable_type

Type of the variable function space(s)

Constructor & Destructor Documentation

◆ IgABaseNoRefData() [1/6]

template<std::size_t... GeometryMapNumCoeffs, size_t... Is, std::size_t... VariableNumCoeffs, size_t... Js>
iganet::IgABaseNoRefData< GeometryMap, Variable >::IgABaseNoRefData ( std::tuple< std::array< int64_t, GeometryMapNumCoeffs >... >  geometryMapNumCoeffs,
std::index_sequence< Is... >  ,
std::tuple< std::array< int64_t, VariableNumCoeffs >... >  variableNumCoeffs,
std::index_sequence< Js... >  ,
iganet::Options< value_type options = iganet::Options<value_type>{} 
)
inlineprivate

Constructor: number of spline coefficients (different for Geometry and Variable types)

◆ IgABaseNoRefData() [2/6]

Default constructor.

◆ IgABaseNoRefData() [3/6]

template<std::size_t NumCoeffs>
iganet::IgABaseNoRefData< GeometryMap, Variable >::IgABaseNoRefData ( std::array< int64_t, NumCoeffs ncoeffs,
iganet::Options< value_type options = iganet::Options<value_type>{} 
)
inline

Constructor: number of spline coefficients (same for geometry map and variables)

◆ IgABaseNoRefData() [4/6]

template<std::size_t... NumCoeffs>
iganet::IgABaseNoRefData< GeometryMap, Variable >::IgABaseNoRefData ( std::tuple< std::array< int64_t, NumCoeffs >... >  ncoeffs,
iganet::Options< value_type options = iganet::Options<value_type>{} 
)
inline

Constructor: number of spline coefficients (same for geometry map and variables)

◆ IgABaseNoRefData() [5/6]

template<std::size_t GeometryMapNumCoeffs, std::size_t VariableNumCoeffs>
iganet::IgABaseNoRefData< GeometryMap, Variable >::IgABaseNoRefData ( std::array< int64_t, GeometryMapNumCoeffs geometryMapNumCoeffs,
std::array< int64_t, VariableNumCoeffs variableNumCoeffs,
iganet::Options< value_type options = iganet::Options<value_type>{} 
)
inline

Constructor: number of spline coefficients (different for geometry map and variables)

◆ IgABaseNoRefData() [6/6]

template<std::size_t... GeometryMapNumCoeffs, std::size_t... VariableNumCoeffs>
iganet::IgABaseNoRefData< GeometryMap, Variable >::IgABaseNoRefData ( std::tuple< std::array< int64_t, GeometryMapNumCoeffs >... >  geometryMapNumCoeffs,
std::tuple< std::array< int64_t, VariableNumCoeffs >... >  variableNumCoeffs,
iganet::Options< value_type options = iganet::Options<value_type>{} 
)
inline

Constructor: number of spline coefficients (different for geometry map and variables)

Member Function Documentation

◆ G() [1/2]

Returns a non-constant reference to the spline representation of the geometry map.

◆ G() [2/2]

Returns a constant reference to the spline representation of the geometry map.

◆ geometryMap_collPts() [1/2]

virtual geometryMap_collPts_type iganet::IgABaseNoRefData< GeometryMap, Variable >::geometryMap_collPts ( enum collPts  collPts) const
inlinevirtual

Returns the geometry map collocation points.

In the default implementation the collocation points are the Greville abscissae in the interior of the domain and on the boundary faces. This behavior can be changed by overriding this virtual function in a derived class.

◆ geometryMap_collPts() [2/2]

template<size_t... Is>
geometryMap_collPts_type iganet::IgABaseNoRefData< GeometryMap, Variable >::geometryMap_collPts ( enum collPts  collPts,
std::index_sequence< Is... >   
) const
inlineprivate

Returns the geometry map collocation points.

In the default implementation the collocation points are the Greville abscissae in the interior of the domain and on the boundary faces. This behavior can be changed by overriding this virtual function in a derived class.

◆ u() [1/2]

Returns a non-constant reference to the spline representation of the solution.

◆ u() [2/2]

Returns a constant reference to the spline representation of the solution.

◆ variable_collPts() [1/2]

virtual variable_collPts_type iganet::IgABaseNoRefData< GeometryMap, Variable >::variable_collPts ( enum collPts  collPts) const
inlinevirtual

Returns the variable collocation points.

In the default implementation the collocation points are the Greville abscissae in the interior of the domain and on the boundary faces. This behavior can be changed by overriding this virtual function in a derived class.

◆ variable_collPts() [2/2]

template<size_t... Is>
variable_collPts_type iganet::IgABaseNoRefData< GeometryMap, Variable >::variable_collPts ( enum collPts  collPts,
std::index_sequence< Is... >   
) const
inlineprivate

Returns the variable collocation points.

In the default implementation the collocation points are the Greville abscissae in the interior of the domain and on the boundary faces. This behavior can be changed by overriding this virtual function in a derived class.

Member Data Documentation

◆ G_

Spline representation of the geometry map.

◆ has_GeometryMap

Indicates whether this class provides a geometry map.

◆ has_RefData

Indicates whether this class provides reference data.

◆ has_Solution

Indicates whether this class provides a solution.

◆ u_

Spline representation of the solution.


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