Flow123d  DF_patch_fe_data_tables-3c41206
patch_point_values.cc
Go to the documentation of this file.
1 /*!
2  *
3  * Copyright (C) 2015 Technical University of Liberec. All rights reserved.
4  *
5  * This program is free software; you can redistribute it and/or modify it under
6  * the terms of the GNU General Public License version 3 as published by the
7  * Free Software Foundation. (http://www.gnu.org/licenses/gpl-3.0.en.html)
8  *
9  * This program is distributed in the hope that it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11  * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
12  *
13  *
14  * @file patch_point_values.cc
15  * @brief Store finite element data on the actual patch
16  * such as shape function values, gradients, Jacobian
17  * of the mapping from the reference cell etc.
18  * @author David Flanderka
19  */
20 
22 
23 
24 // template specialization
25 template<>
26 void side_reinit::elop_sd_jac<1>(FMT_UNUSED std::vector<ElOp<3>> &operations, FMT_UNUSED TableDbl &op_results, FMT_UNUSED TableInt &el_table) {
27 }
28 
29 template<>
30 void side_reinit::elop_sd_jac_det<1>(std::vector<ElOp<3>> &operations, TableDbl &op_results, FMT_UNUSED TableInt &el_table) {
31  auto &op = operations[FeSide::SideOps::opSdJacDet];
32  ArrayDbl &result_vec = op_results( op.result_row() );
33  for (uint i=0;i<result_vec.size(); ++i) {
34  result_vec(i) = 1.0;
35  }
36 }
37 
38 
39 template class PatchPointValues<3>;
40 template class ElOp<3>;
41 template class FeBulk::PatchPointValues<3>;
42 template class FeSide::PatchPointValues<3>;
Class represents FE operations.
Bulk data specialization, order of item in operations_ vector corresponds to the BulkOps enum.
Bulk Side specialization, order of item in operations_ vector corresponds to the SideOps enum.
Eigen::Vector< ArrayDbl, Eigen::Dynamic > TableDbl
Definition: eigen_tools.hh:33
Eigen::Array< double, Eigen::Dynamic, 1 > ArrayDbl
Definitions of Eigen structures.
Definition: eigen_tools.hh:31
Eigen::Vector< ArrayInt, Eigen::Dynamic > TableInt
Definition: eigen_tools.hh:34
unsigned int uint
Store finite element data on the actual patch such as shape function values, gradients,...
#define FMT_UNUSED
Definition: posix.h:75