MOOSE - Multiscale Object Oriented Simulation Environment
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
NeuroMesh.cpp File Reference
#include <cctype>
#include "header.h"
#include "SparseMatrix.h"
#include "../utility/Vec.h"
#include "ElementValueFinfo.h"
#include "Boundary.h"
#include "MeshEntry.h"
#include "ChemCompt.h"
#include "MeshCompt.h"
#include "CubeMesh.h"
#include "CylBase.h"
#include "NeuroNode.h"
#include "NeuroMesh.h"
#include "SpineEntry.h"
#include "SpineMesh.h"
#include "EndoMesh.h"
#include "../utility/numutil.h"
#include "../utility/strutil.h"
#include "../shell/Wildcard.h"
+ Include dependency graph for NeuroMesh.cpp:

Go to the source code of this file.

Functions

Id getParentFromMsg (Id id)
 
static SrcFinfo3< vector
< double >, vector< Id >
, vector< unsigned int > > * 
psdListOut ()
 
static SrcFinfo3< vector< Id >
, vector< Id >, vector
< unsigned int > > * 
spineListOut ()
 
Id tryParent (Id id, const string &msgName)
 

Variables

static const CinfoneuroMeshCinfo = NeuroMesh::initCinfo()
 

Function Documentation

Id getParentFromMsg ( Id  id)

Definition at line 459 of file NeuroMesh.cpp.

References tryParent().

460 {
461  if ( id.element()->cinfo()->isA( "Compartment" ) )
462  return tryParent( id, "axialOut" );
463  if ( id.element()->cinfo()->isA( "SymCompartment" ) )
464  return tryParent( id, "proximalOut" );
465  return Id();
466 }
Id tryParent(Id id, const string &msgName)
Definition: NeuroMesh.cpp:446
Definition: Id.h:17

+ Here is the call graph for this function:

static SrcFinfo3< vector< double >, vector< Id >, vector< unsigned int > >* psdListOut ( )
static

Definition at line 48 of file NeuroMesh.cpp.

Referenced by NeuroMesh::initCinfo(), and NeuroMesh::transmitSpineInfo().

49 {
51  vector< Id >, vector< unsigned int > >
52  psdListOut(
53  "psdListOut",
54  "Tells PsdMesh to build a mesh. "
55  "Arguments: (Cell Id, Coordinates of each psd, "
56  "Id of electrical compartment mapped to each voxel, "
57  "index of matching parent voxels for each spine.) "
58  "The coordinates each have 8 entries:"
59  "xyz of centre of psd, xyz of vector perpendicular to psd, "
60  "psd diameter, "
61  " diffusion distance from parent compartment to PSD"
62  );
63  return &psdListOut;
64 }
static SrcFinfo3< vector< double >, vector< Id >, vector< unsigned int > > * psdListOut()
Definition: NeuroMesh.cpp:48

+ Here is the caller graph for this function:

static SrcFinfo3< vector< Id >, vector< Id >, vector< unsigned int > >* spineListOut ( )
static

Definition at line 32 of file NeuroMesh.cpp.

Referenced by NeuroMesh::initCinfo(), and NeuroMesh::transmitSpineInfo().

33 {
34  static SrcFinfo3< vector< Id >, vector< Id >, vector< unsigned int > >
36  "spineListOut",
37  "Request SpineMesh to construct self based on list of electrical "
38  "compartments that this NeuroMesh has determined are spine shaft "
39  "and spine head respectively. Also passes in the info about where "
40  "each spine is connected to the NeuroMesh. "
41  "Arguments: shaft compartment Ids, head compartment Ids,"
42  "index of matching parent voxels for each spine"
43  );
44  return &spineListOut;
45 }
static SrcFinfo3< vector< Id >, vector< Id >, vector< unsigned int > > * spineListOut()
Definition: NeuroMesh.cpp:32

+ Here is the caller graph for this function:

Id tryParent ( Id  id,
const string &  msgName 
)

Definition at line 446 of file NeuroMesh.cpp.

Referenced by getParentFromMsg().

447 {
448  const Finfo* finfo = id.element()->cinfo()->findFinfo( msgName );
449  if ( !finfo )
450  return Id();
451  vector< Id > ret;
452  id.element()->getNeighbors( ret, finfo );
453  assert( ret.size() <= 1 );
454  if ( ret.size() == 1 )
455  return ret[0];
456  return Id();
457 }
Definition: Id.h:17
Definition: Finfo.h:12

+ Here is the caller graph for this function:

Variable Documentation

const Cinfo* neuroMeshCinfo = NeuroMesh::initCinfo()
static

Definition at line 282 of file NeuroMesh.cpp.

Referenced by NeuroMesh::initCinfo().