Flow123d  DF_patch_fe_data_tables-836d647
Classes | Namespaces | Typedefs | Enumerations
patch_point_values.hh File Reference

Store finite element data on the actual patch such as shape function values, gradients, Jacobian of the mapping from the reference cell etc. More...

#include <Eigen/Dense>
#include "fem/eigen_tools.hh"
#include "fem/dh_cell_accessor.hh"
#include "fem/element_values.hh"
#include "quadrature/quadrature_lib.hh"
#include "fem/arena_resource.hh"
#include "fem/arena_vec.hh"
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  PatchPointValues< spacedim >
 
class  ElOp< spacedim >
 Class represents element or FE operations. More...
 
struct  common_reinit
 Defines common functionality of reinit operations. More...
 
struct  bulk_reinit
 Defines reinit operations on bulk points. More...
 
struct  side_reinit
 Defines reinit operations on side points. More...
 
class  FeBulk::PatchPointValues< spacedim >
 Bulk data specialization, order of item in operations_ vector corresponds to the BulkOps enum. More...
 
class  FeSide::PatchPointValues< spacedim >
 Bulk Side specialization, order of item in operations_ vector corresponds to the SideOps enum. More...
 

Namespaces

 FeBulk
 
 FeSide
 

Typedefs

using Scalar = double
 
using Vector = arma::vec3
 
using Tensor = arma::mat33
 
using ReinitFunction = std::function< void(std::vector< ElOp< 3 > > &, TableDbl &, TableInt &)>
 Type for conciseness. More...
 

Enumerations

enum  FeBulk::BulkOps {
  FeBulk::opElCoords , FeBulk::opJac , FeBulk::opInvJac , FeBulk::opJacDet ,
  FeBulk::opCoords , FeBulk::opWeights , FeBulk::opJxW
}
 
enum  FeSide::SideOps {
  FeSide::opElCoords , FeSide::opElJac , FeSide::opElInvJac , FeSide::opSideCoords ,
  FeSide::opSideJac , FeSide::opSideJacDet , FeSide::opExpansionElCoords , FeSide::opExpansionElJac ,
  FeSide::opExpansionElInvJac , FeSide::opExpansionSideCoords , FeSide::opExpansionSideJac , FeSide::opExpansionSideJacDet ,
  FeSide::opCoords , FeSide::opWeights , FeSide::opJxW , FeSide::opNormalVec
}
 
enum  OpSizeType { elemOp , pointOp , fixedSizeOp }
 Distinguishes operations by type and size of output rows. More...
 

Detailed Description

Store finite element data on the actual patch such as shape function values, gradients, Jacobian of the mapping from the reference cell etc.

 * Copyright (C) 2015 Technical University of Liberec. All rights reserved.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation. (http://www.gnu.org/licenses/gpl-3.0.en.html)

This program 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.

Author
David Flanderka

Definition in file patch_point_values.hh.

Typedef Documentation

◆ ReinitFunction

using ReinitFunction = std::function<void(std::vector<ElOp<3> > &, TableDbl &, TableInt &)>

Type for conciseness.

Definition at line 46 of file patch_point_values.hh.

◆ Scalar

using Scalar = double

Definition at line 38 of file patch_point_values.hh.

◆ Tensor

Definition at line 40 of file patch_point_values.hh.

◆ Vector

using Vector = arma::vec3

Definition at line 39 of file patch_point_values.hh.

Enumeration Type Documentation

◆ OpSizeType

enum OpSizeType

Distinguishes operations by type and size of output rows.

Enumerator
elemOp 

operation is evaluated on elements or sides

pointOp 

operation is evaluated on quadrature points

fixedSizeOp 

operation has fixed size and it is filled during initialization

Definition at line 107 of file patch_point_values.hh.