v0.9.0
Public Member Functions | Public Attributes | List of all members
AnalyticalDirihletBC::DirichletBC Struct Reference

#include <users_modules/helmholtz/src/AnalyticalDirichletObsolete.hpp>

Inheritance diagram for AnalyticalDirihletBC::DirichletBC:
[legend]
Collaboration diagram for AnalyticalDirihletBC::DirichletBC:
[legend]

Public Member Functions

 DirichletBC (MoFEM::Interface &m_field, const string &field, Mat A, Vec X, Vec F)
 
 DirichletBC (MoFEM::Interface &m_field, const string &field)
 
PetscErrorCode iNitalize ()
 
PetscErrorCode iNitalize (Range &tris)
 
 DirichletBC (MoFEM::Interface &m_field, const string &field, Mat A, Vec X, Vec F)
 
 DirichletBC (MoFEM::Interface &m_field, const string &field)
 
PetscErrorCode iNitalize ()
 
PetscErrorCode iNitalize (Range &tris)
 

Public Attributes

Range * tRis_ptr
 

Detailed Description

Definition at line 315 of file AnalyticalDirichletObsolete.hpp.

Constructor & Destructor Documentation

◆ DirichletBC() [1/4]

AnalyticalDirihletBC::DirichletBC::DirichletBC ( MoFEM::Interface m_field,
const string &  field,
Mat  A,
Vec  X,
Vec  F 
)

Definition at line 317 of file AnalyticalDirichletObsolete.hpp.

318  :
319  DisplacementBCFEMethodPreAndPostProc(m_field,field,A,X,F),tRis_ptr(NULL) {}
DEPRECATED typedef DirichletDisplacementBc DisplacementBCFEMethodPreAndPostProc
Definition: DirichletBC.hpp:67

◆ DirichletBC() [2/4]

AnalyticalDirihletBC::DirichletBC::DirichletBC ( MoFEM::Interface m_field,
const string &  field 
)

Definition at line 320 of file AnalyticalDirichletObsolete.hpp.

321  :
322  DisplacementBCFEMethodPreAndPostProc(m_field,field),tRis_ptr(NULL) {}
DEPRECATED typedef DirichletDisplacementBc DisplacementBCFEMethodPreAndPostProc
Definition: DirichletBC.hpp:67

◆ DirichletBC() [3/4]

AnalyticalDirihletBC::DirichletBC::DirichletBC ( MoFEM::Interface m_field,
const string &  field,
Mat  A,
Vec  X,
Vec  F 
)

Definition at line 323 of file AnalyticalDirihlet_obsolete.hpp.

324  :
325  DisplacementBCFEMethodPreAndPostProc(m_field,field,A,X,F),tRis_ptr(NULL) {}
DEPRECATED typedef DirichletDisplacementBc DisplacementBCFEMethodPreAndPostProc
Definition: DirichletBC.hpp:67

◆ DirichletBC() [4/4]

AnalyticalDirihletBC::DirichletBC::DirichletBC ( MoFEM::Interface m_field,
const string &  field 
)

Definition at line 326 of file AnalyticalDirihlet_obsolete.hpp.

327  :
328  DisplacementBCFEMethodPreAndPostProc(m_field,field),tRis_ptr(NULL) {}
DEPRECATED typedef DirichletDisplacementBc DisplacementBCFEMethodPreAndPostProc
Definition: DirichletBC.hpp:67

Member Function Documentation

◆ iNitalize() [1/4]

PetscErrorCode AnalyticalDirihletBC::DirichletBC::iNitalize ( )

Definition at line 326 of file AnalyticalDirichletObsolete.hpp.

326  {
327  PetscFunctionBegin;
328  if(map_zero_rows.empty()) {
329  if(tRis_ptr == NULL) {
330  SETERRQ(PETSC_COMM_SELF,1,"need to inicialsised from AnalyticalDirihletBC::solveProblem");
331  }
333  }
334  PetscFunctionReturn(0);
335  }
CHKERRQ(ierr)

◆ iNitalize() [2/4]

PetscErrorCode AnalyticalDirihletBC::DirichletBC::iNitalize ( )

Definition at line 332 of file AnalyticalDirihlet_obsolete.hpp.

332  {
333  PetscFunctionBegin;
334  if(map_zero_rows.empty()) {
335  if(tRis_ptr == NULL) {
336  SETERRQ(PETSC_COMM_SELF,1,"need to initialised from AnalyticalDirihletBC::solveProblem");
337  }
339  }
340  PetscFunctionReturn(0);
341  }
CHKERRQ(ierr)

◆ iNitalize() [3/4]

PetscErrorCode AnalyticalDirihletBC::DirichletBC::iNitalize ( Range &  tris)

Definition at line 337 of file AnalyticalDirichletObsolete.hpp.

337  {
338  PetscFunctionBegin;
339  ParallelComm* pcomm = ParallelComm::get_pcomm(&mField.get_moab(),MYPCOMM_INDEX);
340  Range ents;
341  rval = mField.get_moab().get_connectivity(tris,ents,true); CHKERR_PETSC(rval);
342  ierr = mField.get_moab().get_adjacencies(tris,1,false,ents,Interface::UNION); CHKERRQ(ierr); //2rd input mean the dim, 1 is edge.
343  ents.merge(tris);
344  for(Range::iterator eit = ents.begin();eit!=ents.end();eit++) {
345  for(_IT_NUMEREDDOF_ROW_BY_NAME_ENT_PART_FOR_LOOP_(problemPtr,fieldName,*eit,pcomm->rank(),dof)) {
346  map_zero_rows[dof->getPetscGlobalDofIdx()] = dof->getFieldData();
347  }
348  }
349  dofsIndices.resize(map_zero_rows.size());
350  dofsValues.resize(map_zero_rows.size());
351  int ii = 0;
352  map<DofIdx,FieldData>::iterator mit = map_zero_rows.begin();
353  for(;mit!=map_zero_rows.end();mit++,ii++) {
354  dofsIndices[ii] = mit->first;
355  dofsValues[ii] = mit->second;
356  }
357  PetscFunctionReturn(0);
358  }
static MoFEMErrorCodeGeneric< moab::ErrorCode > rval
Definition: Exceptions.hpp:84
#define _IT_NUMEREDDOF_ROW_BY_NAME_ENT_PART_FOR_LOOP_(PROBLEMPTR, NAME, ENT, PART, IT)
use with loops to iterate row DOFs
CHKERRQ(ierr)
#define MYPCOMM_INDEX
default communicator number PCOMM
Definition: definitions.h:285

◆ iNitalize() [4/4]

PetscErrorCode AnalyticalDirihletBC::DirichletBC::iNitalize ( Range &  tris)

Definition at line 343 of file AnalyticalDirihlet_obsolete.hpp.

343  {
344  PetscFunctionBegin;
345  ParallelComm* pcomm = ParallelComm::get_pcomm(&mField.get_moab(),MYPCOMM_INDEX);
346  Range ents;
347  rval = mField.get_moab().get_connectivity(tris,ents,true); CHKERR_PETSC(rval);
348  ierr = mField.get_moab().get_adjacencies(tris,1,false,ents,Interface::UNION); CHKERRQ(ierr);
349  ents.merge(tris);
350  for(Range::iterator eit = ents.begin();eit!=ents.end();eit++) {
351  for(_IT_NUMEREDDOF_ROW_BY_NAME_ENT_PART_FOR_LOOP_(problemPtr,fieldName,*eit,pcomm->rank(),dof)) {
352  map_zero_rows[dof->getPetscGlobalDofIdx()] = dof->getFieldData();
353  }
354  }
355  dofsIndices.resize(map_zero_rows.size());
356  dofsValues.resize(map_zero_rows.size());
357  int ii = 0;
358  map<DofIdx,FieldData>::iterator mit = map_zero_rows.begin();
359  for(;mit!=map_zero_rows.end();mit++,ii++) {
360  dofsIndices[ii] = mit->first;
361  dofsValues[ii] = mit->second;
362  }
363  PetscFunctionReturn(0);
364  }
static MoFEMErrorCodeGeneric< moab::ErrorCode > rval
Definition: Exceptions.hpp:84
#define _IT_NUMEREDDOF_ROW_BY_NAME_ENT_PART_FOR_LOOP_(PROBLEMPTR, NAME, ENT, PART, IT)
use with loops to iterate row DOFs
CHKERRQ(ierr)
#define MYPCOMM_INDEX
default communicator number PCOMM
Definition: definitions.h:285

Member Data Documentation

◆ tRis_ptr

Range * AnalyticalDirihletBC::DirichletBC::tRis_ptr

Definition at line 324 of file AnalyticalDirichletObsolete.hpp.


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