#include "tutorials/scl-12/src/electrostatics.hpp"
|  | 
|  | OpGradTimesPerm (const std::string &field_name, boost::shared_ptr< MatrixDouble > grad_u_negative, boost::shared_ptr< MatrixDouble > grad_times_perm, boost::shared_ptr< std::map< int, BlockData > > perm_block_sets_ptr, boost::shared_ptr< DataAtIntegrationPts > common_data_ptr) | 
|  | 
| MoFEMErrorCode | doWork (int row_side, int col_side, EntityType row_type, EntityType col_type, EntitiesFieldData::EntData &row_data, EntitiesFieldData::EntData &col_data) | 
|  | 
◆ OpGradTimesPerm()
  
  | 
        
          | OpGradTimesPerm::OpGradTimesPerm | ( | const std::string & | field_name, |  
          |  |  | boost::shared_ptr< MatrixDouble > | grad_u_negative, |  
          |  |  | boost::shared_ptr< MatrixDouble > | grad_times_perm, |  
          |  |  | boost::shared_ptr< std::map< int, BlockData > > | perm_block_sets_ptr, |  
          |  |  | boost::shared_ptr< DataAtIntegrationPts > | common_data_ptr |  
          |  | ) |  |  |  | inline | 
 
Definition at line 249 of file electrostatics.hpp.
  258    std::fill(&doEntities[MBVERTEX], &doEntities[MBMAXTYPE], false);
  259    doEntities[MBVERTEX] = true;
  260  }
DomainEle::UserDataOperator DomainEleOp
constexpr auto field_name
boost::shared_ptr< std::map< int, BlockData > > permBlockSetsPtr
boost::shared_ptr< MatrixDouble > gradTimesPerm
boost::shared_ptr< MatrixDouble > gradUNegative
boost::shared_ptr< DataAtIntegrationPts > commonDataPtr
 
 
 
◆ doWork()
Definition at line 262 of file electrostatics.hpp.
  265                                                            {
  267 
  268    size_t nb_gauss_pts = getGaussPts().size2();
  271    auto t_grad_times_perm = getFTensor1FromMat<SPACE_DIM>(*
gradTimesPerm);
 
  272    auto t_negative_grad_u = getFTensor1FromMat<SPACE_DIM>(*
gradUNegative);
 
  274    double blockPermittivity = 0.0;
  276      if (
n.second.domainEnts.find(getFEEntityHandle()) !=
 
  277          n.second.domainEnts.end()) {
 
  278        blockPermittivity = 
n.second.epsPermit;
 
  279      }
  280    }
  281    for (int gg = 0; gg != nb_gauss_pts; gg++) {
  282      t_grad_times_perm(
I) = t_negative_grad_u(
I) * blockPermittivity;
 
  283 
  284      ++t_negative_grad_u;
  285      ++t_grad_times_perm;
  286    }
  287 
  289  }
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
const double n
refractive index of diffusive medium
constexpr IntegrationType I
 
 
◆ commonDataPtr
◆ gradTimesPerm
  
  | 
        
          | boost::shared_ptr<MatrixDouble> OpGradTimesPerm::gradTimesPerm |  | private | 
 
 
◆ gradUNegative
  
  | 
        
          | boost::shared_ptr<MatrixDouble> OpGradTimesPerm::gradUNegative |  | private | 
 
 
◆ permBlockSetsPtr
  
  | 
        
          | boost::shared_ptr<std::map<int, BlockData> > OpGradTimesPerm::permBlockSetsPtr |  | private | 
 
 
The documentation for this struct was generated from the following file: