MGIS
Loading...
Searching...
No Matches
mgis::function::FunctionView< Space, layout, is_mutable > Struct Template Reference

function defined on a space. More...

#include </home/runner/work/MFrontGenericInterfaceSupport/MFrontGenericInterfaceSupport/include/MGIS/Function/Function.hxx>

Inheritance diagram for mgis::function::FunctionView< Space, layout, is_mutable >:
mgis::PreconditionsChecker< Child > mgis::function::FunctionDataLayout< layout > mgis::function::FunctionDataSize< layout.data_size > mgis::function::FunctionDataStride< layout.data_stride > mgis::function::Function< Space, N >

Public Types

using ExternalData = std::conditional_t< is_mutable, std::span< real >, std::span< const real > >
 a simple alias to the type holding the data used by the view
 
using ValuesView = std::conditional_t< layout.data_size==dynamic_extent, std::span< real >, std::conditional_t< layout.data_size==1, real &, std::span< real, layout.data_size > > >
 type of the value returned by the call operator
 
using ConstValuesView = std::conditional_t< layout.data_size==dynamic_extent, std::span< const real >, std::conditional_t< layout.data_size==1, const real &, std::span< const real, layout.data_size > > >
 type of the value returned by the call operator (const case)
 

Public Member Functions

constexpr FunctionView (const Space &, ExternalData, const size_type)
 constructor
 
template<bool doPreconditionsCheck>
requires ((layout.data_size != dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr FunctionView (const PreconditionsCheck< doPreconditionsCheck > &, const Space &, ExternalData, const size_type)
 constructor
 
constexpr FunctionView (const Space &, ExternalData, const size_type, const size_type)
 constructor
 
template<bool doPreconditionsCheck>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr FunctionView (const PreconditionsCheck< doPreconditionsCheck > &, const Space &, ExternalData, const size_type, const size_type)
 constructor
 
constexpr FunctionView (const Space &, ExternalData, const size_type)
 constructor
 
template<bool doPreconditionsCheck>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr FunctionView (const PreconditionsCheck< doPreconditionsCheck > &, const Space &, ExternalData, const size_type)
 constructor
 
constexpr FunctionView (const Space &, ExternalData, const size_type)
 constructor
 
template<bool doPreconditionsCheck>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride != dynamic_extent))
constexpr FunctionView (const PreconditionsCheck< doPreconditionsCheck > &, const Space &, ExternalData, const size_type)
 constructor
 
constexpr FunctionView (const Space &, ExternalData)
 constructor
 
template<bool doPreconditionsCheck>
requires ((layout.data_size != dynamic_extent) && (layout.data_stride != dynamic_extent))
constexpr FunctionView (const PreconditionsCheck< doPreconditionsCheck > &, const Space &, ExternalData)
 constructor
 
constexpr FunctionView (const Space &, ExternalData, const FunctionDataLayout< layout > &)
 check that the preconditions to build the view are met
 
template<bool doPreconditionsCheck>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr FunctionView (const PreconditionsCheck< doPreconditionsCheck > &, const Space &, ExternalData, const FunctionDataLayout< layout > &)
 check that the preconditions to build the view are met
 
constexpr FunctionView (const Space &, ExternalData, const FunctionDataLayout< layout > &)
 check that the preconditions to build the view are met
 
template<bool doPreconditionsCheck>
requires ((layout.data_size != dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr FunctionView (const PreconditionsCheck< doPreconditionsCheck > &, const Space &, ExternalData, const FunctionDataLayout< layout > &)
 check that the preconditions to build the view are met
 
constexpr FunctionView (const Space &, ExternalData, const FunctionDataLayout< layout > &)
 check that the preconditions to build the view are met
 
template<bool doPreconditionsCheck>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride != dynamic_extent))
constexpr FunctionView (const PreconditionsCheck< doPreconditionsCheck > &, const Space &, ExternalData, const FunctionDataLayout< layout > &)
 check that the preconditions to build the view are met
 
constexpr FunctionView (FunctionView &&)=default
 
constexpr FunctionView (const FunctionView &)=default
 
constexpr const Space & getSpace () const noexcept
 
constexpr realdata (mgis::attributes::UnsafeAttribute, const size_type)
 
constexpr realdata (mgis::attributes::UnsafeAttribute, const size_type, const size_type)
 
constexpr const realdata (mgis::attributes::UnsafeAttribute, const size_type) const
 
constexpr const realdata (mgis::attributes::UnsafeAttribute, const size_type, const size_type) const
 
constexpr ValuesView operator() (const size_type)
 
constexpr ValuesView operator() (const size_type, const size_type)
 
constexpr ConstValuesView operator() (const size_type) const
 
constexpr ConstValuesView operator() (const size_type, const size_type) const
 
constexpr bool checkCompatibility (const FunctionView &) const
 
constexpr std::span< const realdata () const
 
constexpr ~FunctionView ()=default
 destructor
 
- Public Member Functions inherited from mgis::function::FunctionDataLayout< layout >
 FunctionDataLayout (FunctionDataLayout &&)=default
 
 FunctionDataLayout (const FunctionDataLayout &)=default
 
FunctionDataLayoutoperator= (FunctionDataLayout &&)=default
 
FunctionDataLayoutoperator= (const FunctionDataLayout &)=default
 
 ~FunctionDataLayout ()=default
 destructor
 
- Public Member Functions inherited from mgis::function::FunctionDataSize< layout.data_size >
constexpr bool isScalar () const noexcept
 
constexpr size_type getNumberOfComponents () const noexcept
 
- Public Member Functions inherited from mgis::function::FunctionDataStride< layout.data_stride >
constexpr size_type getDataStride () const noexcept
 

Static Public Member Functions

static constexpr bool checkPreconditions (AbstractErrorHandler &, const Space &, ExternalData)
 check that the preconditions to build the view are met
 
static constexpr bool checkPreconditions (AbstractErrorHandler &, const Space &, ExternalData, const size_type)
 check that the preconditions to build the view are met
 
static constexpr bool checkPreconditions (AbstractErrorHandler &, const Space &, ExternalData, const size_type)
 check that the preconditions to build the view are met
 
static constexpr bool checkPreconditions (AbstractErrorHandler &, const Space &, ExternalData, const size_type)
 check that the preconditions to build the view are met
 
static constexpr bool checkPreconditions (AbstractErrorHandler &, const Space &, ExternalData, const size_type, const size_type)
 check that the preconditions to build the view are met
 
static constexpr bool checkPreconditions (AbstractErrorHandler &, const Space &, ExternalData, const FunctionDataLayout< layout > &)
 check that the preconditions to build the view are met
 

Static Public Attributes

static constexpr bool allowScalarAccessor
 

Protected Attributes

const Space space
 underlying discretization space
 
ExternalData values
 underlying values
 

Additional Inherited Members

- Protected Member Functions inherited from mgis::function::FunctionDataLayout< layout >
constexpr size_type getDataOffset (const size_type) const noexcept
 

Detailed Description

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout = FunctionDataLayoutDescription{}, bool is_mutable = true>
struct mgis::function::FunctionView< Space, layout, is_mutable >

function defined on a space.

The FunctionView defines a function using an external memory region.

This memory region may contain more data than the one associated with the function as illustrated by the following figure:

|------------------------------------------------------------—| <- Raw data -> |------------------------------------—| <- Data of the first element --> |------------—| | <-function data-> ^ ^ | | data_size | data_stride

The size of the all data (including the one not related to the function) associated with one element of the space is called the data_stride in the FunctionView class.

The size of the data hold by the function per element of the space, i.e. th number of components of the function is given by data_size.

Constructor & Destructor Documentation

◆ FunctionView() [1/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ((layout.data_size != dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const Space &  s,
FunctionView< Space, layout, is_mutable >::ExternalData  v,
const size_type  dsize 
)
constexpr

constructor

Parameters
[in]squadrature space.
[in]vvalues
[in]dstridesize of the data per elements

◆ FunctionView() [2/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ((layout.data_size != dynamic_extent) && (layout.data_stride == dynamic_extent))
template<bool doPreconditionsCheck>
requires ((layout.data_size != dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const PreconditionsCheck< doPreconditionsCheck > &  pcheck,
const Space &  s,
FunctionView< Space, layout, is_mutable >::ExternalData  v,
const size_type  dsize 
)
constexpr

constructor

Parameters
[in]pcheckdo preconditions checks
[in]squadrature space.
[in]vvalues
[in]dstridesize of the data per elements

◆ FunctionView() [3/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const Space &  s,
FunctionView< Space, layout, is_mutable >::ExternalData  v,
const size_type  dsize,
const size_type  dstride 
)
constexpr

constructor

Parameters
[in]squadrature space.
[in]vvalues
[in]dsizesize of the data per elements
[in]dstridedata stride

◆ FunctionView() [4/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride == dynamic_extent))
template<bool doPreconditionsCheck>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const PreconditionsCheck< doPreconditionsCheck > &  pcheck,
const Space &  s,
FunctionView< Space, layout, is_mutable >::ExternalData  v,
const size_type  dsize,
const size_type  dstride 
)
constexpr

constructor

Parameters
[in]pcheckdo preconditions checks
[in]squadrature space.
[in]vvalues
[in]dsizesize of the data per elements
[in]dstridedata stride

◆ FunctionView() [5/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout = FunctionDataLayoutDescription{}, bool is_mutable = true>
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const Space &  ,
ExternalData  ,
const size_type   
)
constexpr

constructor

Parameters
[in]squadrature space.
[in]vvalues
[in]dsizesize of the data per elements

◆ FunctionView() [6/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout = FunctionDataLayoutDescription{}, bool is_mutable = true>
template<bool doPreconditionsCheck>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const PreconditionsCheck< doPreconditionsCheck > &  ,
const Space &  ,
ExternalData  ,
const size_type   
)
constexpr

constructor

Parameters
[in]pcheckdo preconditions checks
[in]squadrature space.
[in]vvalues
[in]dsizesize of the data per elements

◆ FunctionView() [7/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout = FunctionDataLayoutDescription{}, bool is_mutable = true>
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const Space &  ,
ExternalData  ,
const size_type   
)
constexpr

constructor

Parameters
[in]squadrature space.
[in]vvalues
[in]dsizesize of the data per elements

◆ FunctionView() [8/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout = FunctionDataLayoutDescription{}, bool is_mutable = true>
template<bool doPreconditionsCheck>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride != dynamic_extent))
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const PreconditionsCheck< doPreconditionsCheck > &  ,
const Space &  ,
ExternalData  ,
const size_type   
)
constexpr

constructor

Parameters
[in]pcheckdo preconditions checks
[in]squadrature space.
[in]vvalues
[in]dsizesize of the data per elements

◆ FunctionView() [9/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ((layout.data_size != dynamic_extent) && (layout.data_stride != dynamic_extent))
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const Space &  s,
typename FunctionView< Space, layout, is_mutable >::ExternalData  v 
)
constexpr

constructor

Parameters
[in]squadrature space.
[in]vvalues

◆ FunctionView() [10/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ((layout.data_size != dynamic_extent) && (layout.data_stride != dynamic_extent))
template<bool doPreconditionsCheck>
requires ((layout.data_size != dynamic_extent) && (layout.data_stride != dynamic_extent))
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const PreconditionsCheck< doPreconditionsCheck > &  pcheck,
const Space &  s,
typename FunctionView< Space, layout, is_mutable >::ExternalData  v 
)
constexpr

constructor

Parameters
[in]pcheckdo preconditions checks
[in]squadrature space.
[in]vvalues

◆ FunctionView() [11/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const Space &  s,
FunctionView< Space, layout, is_mutable >::ExternalData  v,
const FunctionDataLayout< layout > &  l 
)
constexpr

check that the preconditions to build the view are met

Parameters
[in]squadrature space.
[in]vvalues
[in]ldata layout

◆ FunctionView() [12/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride == dynamic_extent))
template<bool doPreconditionsCheck>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const PreconditionsCheck< doPreconditionsCheck > &  pcheck,
const Space &  s,
FunctionView< Space, layout, is_mutable >::ExternalData  v,
const FunctionDataLayout< layout > &  l 
)
constexpr

check that the preconditions to build the view are met

Parameters
[in]pcheckdo preconditions checks
[in]squadrature space.
[in]vvalues
[in]ldata layout

◆ FunctionView() [13/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout = FunctionDataLayoutDescription{}, bool is_mutable = true>
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const Space &  ,
ExternalData  ,
const FunctionDataLayout< layout > &   
)
constexpr

check that the preconditions to build the view are met

Parameters
[in]squadrature space.
[in]vvalues
[in]ldata layout

◆ FunctionView() [14/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout = FunctionDataLayoutDescription{}, bool is_mutable = true>
template<bool doPreconditionsCheck>
requires ((layout.data_size != dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const PreconditionsCheck< doPreconditionsCheck > &  ,
const Space &  ,
ExternalData  ,
const FunctionDataLayout< layout > &   
)
constexpr

check that the preconditions to build the view are met

Parameters
[in]pcheckdo preconditions checks
[in]squadrature space.
[in]vvalues
[in]ldata layout

◆ FunctionView() [15/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout = FunctionDataLayoutDescription{}, bool is_mutable = true>
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const Space &  ,
ExternalData  ,
const FunctionDataLayout< layout > &   
)
constexpr

check that the preconditions to build the view are met

Parameters
[in]squadrature space.
[in]vvalues
[in]ldata layout

◆ FunctionView() [16/16]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout = FunctionDataLayoutDescription{}, bool is_mutable = true>
template<bool doPreconditionsCheck>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride != dynamic_extent))
constexpr mgis::function::FunctionView< Space, layout, is_mutable >::FunctionView ( const PreconditionsCheck< doPreconditionsCheck > &  ,
const Space &  ,
ExternalData  ,
const FunctionDataLayout< layout > &   
)
constexpr

check that the preconditions to build the view are met

Parameters
[in]pcheckdo preconditions checks
[in]squadrature space.
[in]vvalues
[in]ldata layout

Member Function Documentation

◆ checkCompatibility()

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
constexpr bool mgis::function::FunctionView< Space, layout, is_mutable >::checkCompatibility ( const FunctionView< Space, layout, is_mutable > &  v) const
constexpr
Returns
if the current function has the same quadrature space and the same number of components than the given view
Parameters
[in]vview

◆ checkPreconditions() [1/6]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ((layout.data_size != dynamic_extent) && (layout.data_stride != dynamic_extent))
constexpr bool mgis::function::FunctionView< Space, layout, is_mutable >::checkPreconditions ( AbstractErrorHandler eh,
const Space &  s,
typename FunctionView< Space, layout, is_mutable >::ExternalData  v 
)
staticconstexpr

check that the preconditions to build the view are met

Parameters
[in]eherror handler.
[in]squadrature space.
[in]vvalues

◆ checkPreconditions() [2/6]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr bool mgis::function::FunctionView< Space, layout, is_mutable >::checkPreconditions ( AbstractErrorHandler eh,
const Space &  s,
FunctionView< Space, layout, is_mutable >::ExternalData  v,
const FunctionDataLayout< layout > &  l 
)
staticconstexpr

check that the preconditions to build the view are met

Parameters
[in]eherror handler.
[in]squadrature space.
[in]vvalues
[in]dsizesize of the data per elements
[in]dstridedata stride

◆ checkPreconditions() [3/6]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride != dynamic_extent))
constexpr bool mgis::function::FunctionView< Space, layout, is_mutable >::checkPreconditions ( AbstractErrorHandler eh,
const Space &  s,
FunctionView< Space, layout, is_mutable >::ExternalData  v,
const size_type  dsize 
)
staticconstexpr

check that the preconditions to build the view are met

Parameters
[in]eherror handler.
[in]squadrature space.
[in]vvalues
[in]dsizesize of the data per elements

◆ checkPreconditions() [4/6]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout = FunctionDataLayoutDescription{}, bool is_mutable = true>
static constexpr bool mgis::function::FunctionView< Space, layout, is_mutable >::checkPreconditions ( AbstractErrorHandler ,
const Space &  ,
ExternalData  ,
const size_type   
)
staticconstexpr

check that the preconditions to build the view are met

Parameters
[in]eherror handler.
[in]squadrature space.
[in]vvalues
[in]dstridedata stride

◆ checkPreconditions() [5/6]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout = FunctionDataLayoutDescription{}, bool is_mutable = true>
static constexpr bool mgis::function::FunctionView< Space, layout, is_mutable >::checkPreconditions ( AbstractErrorHandler ,
const Space &  ,
ExternalData  ,
const size_type   
)
staticconstexpr

check that the preconditions to build the view are met

Parameters
[in]eherror handler.
[in]squadrature space.
[in]vvalues
[in]dsizesize of the data per elements

◆ checkPreconditions() [6/6]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ((layout.data_size == dynamic_extent) && (layout.data_stride == dynamic_extent))
constexpr bool mgis::function::FunctionView< Space, layout, is_mutable >::checkPreconditions ( AbstractErrorHandler eh,
const Space &  s,
FunctionView< Space, layout, is_mutable >::ExternalData  v,
const size_type  dsize,
const size_type  dstride 
)
staticconstexpr

check that the preconditions to build the view are met

Parameters
[in]eherror handler.
[in]squadrature space.
[in]vvalues
[in]dsizesize of the data per elements
[in]dstridedata stride

◆ data() [1/5]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
constexpr std::span< const real > mgis::function::FunctionView< Space, layout, is_mutable >::data ( ) const
constexpr
Returns
a view to the function values

◆ data() [2/5]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ( is_mutable&& LinearElementSpaceConcept<Space> && (!hasElementWorkspace<Space>))
constexpr real * mgis::function::FunctionView< Space, layout, is_mutable >::data ( mgis::attributes::UnsafeAttribute  ,
const size_type  o 
)
constexpr
Returns
the data associated with an integration point
Parameters
[in]ooffset associated with the integration point

◆ data() [3/5]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires (LinearElementSpaceConcept<Space> && (!hasElementWorkspace<Space>))
constexpr const real * mgis::function::FunctionView< Space, layout, is_mutable >::data ( mgis::attributes::UnsafeAttribute  ,
const size_type  o 
) const
constexpr
Returns
the data associated with an integration point
Parameters
[in]ooffset associated with the integration point

◆ data() [4/5]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires (is_mutable&& LinearQuadratureSpaceConcept<Space> && (!hasCellWorkspace<Space>))
constexpr real * mgis::function::FunctionView< Space, layout, is_mutable >::data ( mgis::attributes::UnsafeAttribute  ,
const size_type  e,
const size_type  i 
)
constexpr
Returns
the data associated with an integration point
Parameters
[in]eelement index
[in]iquadrature point index

◆ data() [5/5]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires (LinearQuadratureSpaceConcept<Space> && (!hasCellWorkspace<Space>))
constexpr const real * mgis::function::FunctionView< Space, layout, is_mutable >::data ( mgis::attributes::UnsafeAttribute  ,
const size_type  e,
const size_type  i 
) const
constexpr
Returns
the data associated with an integration point
Parameters
[in]eelement index
[in]iquadrature point index

◆ getSpace()

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
constexpr const Space & mgis::function::FunctionView< Space, layout, is_mutable >::getSpace ( ) const
constexprnoexcept
Returns
the underlying quadrature space

◆ operator()() [1/4]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ( is_mutable&& LinearElementSpaceConcept<Space> && (!hasElementWorkspace<Space>))
constexpr FunctionView< Space, layout, is_mutable >::ValuesView mgis::function::FunctionView< Space, layout, is_mutable >::operator() ( const size_type  o)
constexpr
Returns
the data associated with an integration point
Parameters
[in]ooffset associated with the integration point

◆ operator()() [2/4]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires (LinearElementSpaceConcept<Space> && (!hasElementWorkspace<Space>))
FunctionView< Space, layout, is_mutable >::ConstValuesView constexpr mgis::function::FunctionView< Space, layout, is_mutable >::operator() ( const size_type  o) const
constexpr
Returns
the data associated with an integration point
Parameters
[in]ooffset associated with the integration point

◆ operator()() [3/4]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires ( is_mutable&& LinearQuadratureSpaceConcept<Space> && (!hasCellWorkspace<Space>))
FunctionView< Space, layout, is_mutable >::ValuesView constexpr mgis::function::FunctionView< Space, layout, is_mutable >::operator() ( const size_type  e,
const size_type  i 
)
constexpr
Returns
the data associated with an integration point
Parameters
[in]eelement index
[in]iquadrature point index

◆ operator()() [4/4]

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout, bool is_mutable>
requires (LinearQuadratureSpaceConcept<Space> && (!hasCellWorkspace<Space>))
FunctionView< Space, layout, is_mutable >::ConstValuesView constexpr mgis::function::FunctionView< Space, layout, is_mutable >::operator() ( const size_type  e,
const size_type  i 
) const
constexpr
Returns
the data associated with an integration point
Parameters
[in]eelement index
[in]iquadrature point index

Member Data Documentation

◆ allowScalarAccessor

template<LinearFunctionalSpaceConcept Space, FunctionDataLayoutDescription layout = FunctionDataLayoutDescription{}, bool is_mutable = true>
constexpr bool mgis::function::FunctionView< Space, layout, is_mutable >::allowScalarAccessor
staticconstexpr
Initial value:
=
(layout.data_size == dynamic_extent) ? true : layout.data_size == 1
constexpr size_type dynamic_extent
a constant whose role is similar to std::dynamic_extent
Definition Config.hxx:118

The documentation for this struct was generated from the following files: