Flow123d
DF_patch_fe_data_tables-586fb30
|
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 "system/asserts.hh"
#include "fem/arena_resource.hh"
#include "fem/arena_vec.hh"
#include <armadillo>
#include <Eigen/Core>
#include <Eigen/Dense>
#include <unsupported/Eigen/MatrixFunctions>
Go to the source code of this file.
Namespaces | |
eigen_tools | |
eigen_arena_tools | |
Typedefs | |
typedef Eigen::Array< double, Eigen::Dynamic, 1 > | ArrayDbl |
Definitions of Eigen structures. More... | |
typedef Eigen::Array< uint, Eigen::Dynamic, 1 > | ArrayInt |
typedef Eigen::Vector< ArrayDbl, Eigen::Dynamic > | TableDbl |
typedef Eigen::Vector< ArrayInt, Eigen::Dynamic > | TableInt |
typedef Eigen::Vector< ArenaVec< uint >, Eigen::Dynamic > | IntTableArena |
Functions | |
template<int m, int n> | |
ArrayDbl | eigen_tools::determinant (const Eigen::Matrix< ArrayDbl, m, n > &A) |
Calculates determinant of a rectangular matrix. More... | |
Eigen::Matrix< ArrayDbl, 1, 1 > | eigen_tools::normal_matrix (const Eigen::Matrix< ArrayDbl, 1, 2 > &A) |
Eigen::Matrix< ArrayDbl, 1, 1 > | eigen_tools::normal_matrix (const Eigen::Matrix< ArrayDbl, 2, 1 > &A) |
Eigen::Matrix< ArrayDbl, 1, 1 > | eigen_tools::normal_matrix (const Eigen::Matrix< ArrayDbl, 1, 3 > &A) |
Eigen::Matrix< ArrayDbl, 1, 1 > | eigen_tools::normal_matrix (const Eigen::Matrix< ArrayDbl, 3, 1 > &A) |
Eigen::Matrix< ArrayDbl, 2, 2 > | eigen_tools::normal_matrix (const Eigen::Matrix< ArrayDbl, 2, 3 > &A) |
Eigen::Matrix< ArrayDbl, 2, 2 > | eigen_tools::normal_matrix (const Eigen::Matrix< ArrayDbl, 3, 2 > &A) |
template<> | |
ArrayDbl | eigen_tools::determinant (const Eigen::Matrix< ArrayDbl, 1, 1 > &M) |
template<> | |
ArrayDbl | eigen_tools::determinant (const Eigen::Matrix< ArrayDbl, 2, 2 > &M) |
template<> | |
ArrayDbl | eigen_tools::determinant (const Eigen::Matrix< ArrayDbl, 3, 3 > &M) |
template<> | |
ArrayDbl | eigen_tools::determinant (FMT_UNUSED const Eigen::Matrix< ArrayDbl, 0, 3 > &M) |
template<> | |
ArrayDbl | eigen_tools::determinant (FMT_UNUSED const Eigen::Matrix< ArrayDbl, 3, 0 > &M) |
template<> | |
ArrayDbl | eigen_tools::determinant (const Eigen::Matrix< ArrayDbl, 1, 2 > &M) |
template<> | |
ArrayDbl | eigen_tools::determinant (const Eigen::Matrix< ArrayDbl, 2, 1 > &M) |
template<> | |
ArrayDbl | eigen_tools::determinant (const Eigen::Matrix< ArrayDbl, 1, 3 > &M) |
template<> | |
ArrayDbl | eigen_tools::determinant (const Eigen::Matrix< ArrayDbl, 3, 1 > &M) |
template<> | |
ArrayDbl | eigen_tools::determinant (const Eigen::Matrix< ArrayDbl, 2, 3 > &M) |
template<> | |
ArrayDbl | eigen_tools::determinant (const Eigen::Matrix< ArrayDbl, 3, 2 > &M) |
template<int m, int n> | |
Eigen::Matrix< ArrayDbl, n, m > | eigen_tools::inverse (const Eigen::Matrix< ArrayDbl, m, n > &A) |
Calculates inverse of rectangular matrix or pseudoinverse of non-rectangular matrix. More... | |
template<> | |
Eigen::Matrix< ArrayDbl, 1, 1 > | eigen_tools::inverse< 1, 1 > (const Eigen::Matrix< ArrayDbl, 1, 1 > &A) |
template<> | |
Eigen::Matrix< ArrayDbl, 2, 2 > | eigen_tools::inverse< 2, 2 > (const Eigen::Matrix< ArrayDbl, 2, 2 > &A) |
template<> | |
Eigen::Matrix< ArrayDbl, 3, 3 > | eigen_tools::inverse< 3, 3 > (const Eigen::Matrix< ArrayDbl, 3, 3 > &A) |
template<> | |
Eigen::Matrix< ArrayDbl, 2, 1 > | eigen_tools::inverse< 1, 2 > (const Eigen::Matrix< ArrayDbl, 1, 2 > &A) |
template<> | |
Eigen::Matrix< ArrayDbl, 3, 1 > | eigen_tools::inverse< 1, 3 > (const Eigen::Matrix< ArrayDbl, 1, 3 > &A) |
template<> | |
Eigen::Matrix< ArrayDbl, 3, 2 > | eigen_tools::inverse< 2, 3 > (const Eigen::Matrix< ArrayDbl, 2, 3 > &A) |
template<class ET > | |
void | eigen_tools::resize_table (typename Eigen::Vector< ET, Eigen::Dynamic > &table, uint size) |
Resize vector of Eigen::Array to given size. More... | |
template<unsigned int spacedim, unsigned int dim> | |
Eigen::Matrix< ArrayDbl, spacedim, dim > | eigen_tools::jacobian (const Eigen::Matrix< ArrayDbl, spacedim, dim+1 > &coords) |
template<int m, int n> | |
ArenaVec< double > | eigen_arena_tools::determinant (const Eigen::Matrix< ArenaVec< double >, m, n > &A) |
Calculates determinant of a rectangular matrix. More... | |
Eigen::Matrix< ArenaVec< double >, 1, 1 > | eigen_arena_tools::normal_matrix (const Eigen::Matrix< ArenaVec< double >, 1, 2 > &A) |
Eigen::Matrix< ArenaVec< double >, 1, 1 > | eigen_arena_tools::normal_matrix (const Eigen::Matrix< ArenaVec< double >, 2, 1 > &A) |
Eigen::Matrix< ArenaVec< double >, 1, 1 > | eigen_arena_tools::normal_matrix (const Eigen::Matrix< ArenaVec< double >, 1, 3 > &A) |
Eigen::Matrix< ArenaVec< double >, 1, 1 > | eigen_arena_tools::normal_matrix (const Eigen::Matrix< ArenaVec< double >, 3, 1 > &A) |
Eigen::Matrix< ArenaVec< double >, 2, 2 > | eigen_arena_tools::normal_matrix (const Eigen::Matrix< ArenaVec< double >, 2, 3 > &A) |
Eigen::Matrix< ArenaVec< double >, 2, 2 > | eigen_arena_tools::normal_matrix (const Eigen::Matrix< ArenaVec< double >, 3, 2 > &A) |
template<> | |
ArenaVec< double > | eigen_arena_tools::determinant (const Eigen::Matrix< ArenaVec< double >, 1, 1 > &M) |
template<> | |
ArenaVec< double > | eigen_arena_tools::determinant (const Eigen::Matrix< ArenaVec< double >, 2, 2 > &M) |
template<> | |
ArenaVec< double > | eigen_arena_tools::determinant (const Eigen::Matrix< ArenaVec< double >, 3, 3 > &M) |
template<> | |
ArenaVec< double > | eigen_arena_tools::determinant (FMT_UNUSED const Eigen::Matrix< ArenaVec< double >, 0, 3 > &M) |
template<> | |
ArenaVec< double > | eigen_arena_tools::determinant (FMT_UNUSED const Eigen::Matrix< ArenaVec< double >, 3, 0 > &M) |
template<> | |
ArenaVec< double > | eigen_arena_tools::determinant (const Eigen::Matrix< ArenaVec< double >, 1, 2 > &M) |
template<> | |
ArenaVec< double > | eigen_arena_tools::determinant (const Eigen::Matrix< ArenaVec< double >, 2, 1 > &M) |
template<> | |
ArenaVec< double > | eigen_arena_tools::determinant (const Eigen::Matrix< ArenaVec< double >, 1, 3 > &M) |
template<> | |
ArenaVec< double > | eigen_arena_tools::determinant (const Eigen::Matrix< ArenaVec< double >, 3, 1 > &M) |
template<> | |
ArenaVec< double > | eigen_arena_tools::determinant (const Eigen::Matrix< ArenaVec< double >, 2, 3 > &M) |
template<> | |
ArenaVec< double > | eigen_arena_tools::determinant (const Eigen::Matrix< ArenaVec< double >, 3, 2 > &M) |
template<int m, int n> | |
Eigen::Matrix< ArenaVec< double >, n, m > | eigen_arena_tools::inverse (const Eigen::Matrix< ArenaVec< double >, m, n > &A) |
Calculates inverse of rectangular matrix or pseudoinverse of non-rectangular matrix. More... | |
template<> | |
Eigen::Matrix< ArenaVec< double >, 1, 1 > | eigen_arena_tools::inverse< 1, 1 > (const Eigen::Matrix< ArenaVec< double >, 1, 1 > &A) |
template<> | |
Eigen::Matrix< ArenaVec< double >, 2, 2 > | eigen_arena_tools::inverse< 2, 2 > (const Eigen::Matrix< ArenaVec< double >, 2, 2 > &A) |
template<> | |
Eigen::Matrix< ArenaVec< double >, 3, 3 > | eigen_arena_tools::inverse< 3, 3 > (const Eigen::Matrix< ArenaVec< double >, 3, 3 > &A) |
template<> | |
Eigen::Matrix< ArenaVec< double >, 2, 1 > | eigen_arena_tools::inverse< 1, 2 > (const Eigen::Matrix< ArenaVec< double >, 1, 2 > &A) |
template<> | |
Eigen::Matrix< ArenaVec< double >, 3, 1 > | eigen_arena_tools::inverse< 1, 3 > (const Eigen::Matrix< ArenaVec< double >, 1, 3 > &A) |
template<> | |
Eigen::Matrix< ArenaVec< double >, 3, 2 > | eigen_arena_tools::inverse< 2, 3 > (const Eigen::Matrix< ArenaVec< double >, 2, 3 > &A) |
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.
Definition in file eigen_tools.hh.
typedef Eigen::Array<double,Eigen::Dynamic,1> ArrayDbl |
Definitions of Eigen structures.
Definition at line 34 of file eigen_tools.hh.
Definition at line 35 of file eigen_tools.hh.
typedef Eigen::Vector<ArenaVec<uint>, Eigen::Dynamic> IntTableArena |
Definition at line 39 of file eigen_tools.hh.
typedef Eigen::Vector<ArrayDbl,Eigen::Dynamic> TableDbl |
Definition at line 36 of file eigen_tools.hh.
typedef Eigen::Vector<ArrayInt,Eigen::Dynamic> TableInt |
Definition at line 37 of file eigen_tools.hh.