MOOSE - Multiscale Object Oriented Simulation Environment
|
#include <Python.h>
#include <structmember.h>
#include <iostream>
#include <typeinfo>
#include <cstring>
#include <map>
#include <ctime>
#include <csignal>
#include <exception>
#include "../utility/print_function.hpp"
#include "../basecode/header.h"
#include "../basecode/global.h"
#include "../basecode/Id.h"
#include "../basecode/ObjId.h"
#include "../utility/utility.h"
#include "../shell/Shell.h"
#include "../shell/Wildcard.h"
#include "moosemodule.h"
Go to the source code of this file.
Macros | |
#define | INITERROR return |
#define | MODINIT(name) init##name() |
Functions | |
vector< ObjId > | all_elements (Id id) |
PyObject * | convert_and_set_tuple_entry (PyObject *tuple, unsigned int index, void *vptr, char typecode) |
int | defineAllClasses (PyObject *module_dict) |
int | defineClass (PyObject *module_dict, const Cinfo *cinfo) |
int | defineDestFinfos (const Cinfo *cinfo) |
int | defineElementFinfos (const Cinfo *cinfo) |
int | defineLookupFinfos (const Cinfo *cinfo) |
void | destroyMsgManagers () |
void | finalize () |
create_shell() More... | |
const map< string, string > & | get_field_alias () |
map< string, vector < PyGetSetDef > > & | get_getsetdefs () |
map< string, PyTypeObject * > & | get_moose_classes () |
PyTypeObject * | getBaseClass (PyObject *self) |
int | getFieldDict (string className, string finfoType, vector< string > &fieldNames, vector< string > &fieldTypes) |
vector< string > | getFieldNames (string className, string finfoType) |
string | getFieldType (string className, string fieldName) |
const char ** | getFinfoTypes () |
finalize() More... | |
Id | getShell (int argc, char **argv) |
setup_runtime_env() More... | |
void | handle_keyboard_interrupts (int signum) |
Handle signal raised by user during simulation. More... | |
Id | init (int argc, char **argv, bool &doUnitTests, bool &doRegressionTests, unsigned int &benchmark) |
void | initMsgManagers () |
PyMODINIT_FUNC | MODINIT (_moose) |
PyObject * | moose_connect (PyObject *dummy, PyObject *args) |
PyObject * | moose_copy (PyObject *dummy, PyObject *args, PyObject *kwargs) |
PyObject * | moose_delete (PyObject *dummy, PyObject *args) |
PyObject * | moose_element (PyObject *dummy, PyObject *args) |
PyObject * | moose_exists (PyObject *dummy, PyObject *args) |
PyObject * | moose_getCwe (PyObject *dummy, PyObject *args) |
PyObject * | moose_getField (PyObject *dummy, PyObject *args) |
PyObject * | moose_getFieldDict (PyObject *dummy, PyObject *args) |
PyObject * | moose_getFieldNames (PyObject *dummy, PyObject *args) |
PyObject * | moose_isRunning (PyObject *dummy, PyObject *args) |
PyObject * | moose_loadModel (PyObject *dummy, PyObject *args) |
PyObject * | moose_move (PyObject *dummy, PyObject *args) |
PyObject * | moose_ObjId_get_destField_attr (PyObject *self, void *closure) |
PyObject * | moose_ObjId_get_elementField_attr (PyObject *self, void *closure) |
PyObject * | moose_ObjId_get_lookupField_attr (PyObject *self, void *closure) |
PyObject * | moose_quit (PyObject *dummy) |
PyObject * | moose_rand (PyObject *dummy) |
PyObject * | moose_reinit (PyObject *dummy, PyObject *args) |
PyObject * | moose_seed (PyObject *dummy, PyObject *args) |
PyObject * | moose_setClock (PyObject *dummy, PyObject *args) |
PyObject * | moose_setCwe (PyObject *dummy, PyObject *args) |
PyObject * | moose_start (PyObject *dummy, PyObject *args) |
PyObject * | moose_stop (PyObject *dummy, PyObject *args) |
PyObject * | moose_useClock (PyObject *dummy, PyObject *args) |
PyObject * | moose_wildcardFind (PyObject *dummy, PyObject *args) |
void | mooseBenchmarks (unsigned int option) |
void | mpiTests () |
void | nonMpiTests (Shell *) |
PyObject * | oid_to_element (ObjId oid) |
int | parseFinfoType (string className, string finfoType, string fieldName, vector< string > &typeVec) |
void | processTests (Shell *) |
PyDoc_STRVAR (moose_getFieldNames_documentation,"getFieldNames(className, finfoType='valueFinfo') -> tuple\n""\n""Get a tuple containing the name of all the fields of `finfoType`\n""kind.\n""\n""Parameters\n""----------\n""className : string\n"" Name of the class to look up.\n""finfoType : string\n"" The kind of field "" `valueFinfo` - "" `srcFinfo` - "" `destFinfo` - "" `lookupFinfo`- "" `fieldElementFinfo` - \n""\n""Returns\n""-------\n""tuple\n"" Names of the fields of type `finfoType` in class `className`.\n") | |
PyDoc_STRVAR (moose_copy_documentation,"copy(src, dest, name, n, toGlobal, copyExtMsg) -> bool\n""\n""Make copies of a moose object.\n""\n""Parameters\n""----------\n""src : vec, element or str\n"" source object.\n""dest : vec, element or str\n"" Destination object to copy into.\n""name : str\n"" Name of the new object. If omitted, name of the original will be used.\n""n : int\n"" Number of copies to make.\n""toGlobal : int\n"" Relevant for parallel environments only. If false, the copies will\n"" reside on local node, otherwise all nodes get the copies.\n""copyExtMsg : int\n"" If true, messages to/from external objects are also copied.\n""\n""Returns\n""-------\n""vec\n"" newly copied vec\n") | |
PyDoc_STRVAR (moose_delete_documentation,"delete(obj)->None\n""\n""Delete the underlying moose object. This does not delete any of the\n""Python objects referring to this vec but does invalidate them. Any\n""attempt to access them will raise a ValueError.\n""\n""Parameters\n""----------\n""id : vec\n"" vec of the object to be deleted.\n""\n""Returns\n""-------\n""None\n") | |
PyDoc_STRVAR (moose_useClock_documentation,"useClock(tick, path, fn)\n\n""schedule `fn` function of every object that matches `path` on tick no. `tick`.\n\n ""Most commonly the function is 'process'. NOTE: unlike earlier versions, now autoschedule is not available. You have to call useClock for every element that should be updated during the simulation.\n\n ""The sequence of clockticks with the same dt is according to their number. This is utilized for controlling the order of updates in various objects where it matters. The following convention should be observed when assigning clockticks to various components of a model:\n\n ""Clock ticks 0-3 are for electrical (biophysical) components, 4 and 5 are for chemical kinetics, 6 and 7 are for lookup tables and stimulus, 8 and 9 are for recording tables.\n\n ""Generally, `process` is the method to be assigned a clock tick. Notable exception is `init` method of Compartment class which is assigned tick 0.\n\n"" - 0 : Compartment: `init`\n"" - 1 : Compartment: `process`\n"" - 2 : HHChannel and other channels: `process`\n"" - 3 : CaConc : `process`\n"" - 4,5 : Elements for chemical kinetics : `process`\n"" - 6,7 : Lookup (tables), stimulus : `process`\n"" - 8,9 : Tables for plotting : `process`\n"" \n""Parameters\n""----------\n""tick : int\n"" tick number on which the targets should be scheduled.\n""path : str\n"" path of the target element(s). This can be a wildcard also.\n""fn : str\n"" name of the function to be called on each tick. Commonly `process`.\n""\n""Examples\n""--------\n""In multi-compartmental neuron model a compartment's membrane potential (Vm) is dependent on its neighbours' membrane potential. Thus it must get the neighbour's present Vm before computing its own Vm in next time step. This ordering is achieved by scheduling the `init` function, which communicates membrane potential, on tick 0 and `process` function on tick 1.\n\n"" >>> moose.useClock(0, '/model/compartment_1', 'init')\n"" >>> moose.useClock(1, '/model/compartment_1', 'process')\n") | |
PyDoc_STRVAR (moose_setClock_documentation,"setClock(tick, dt)\n""\n""set the ticking interval of `tick` to `dt`.\n""\n""A tick with interval `dt` will call the functions scheduled on that tick every `dt` timestep.\n""\n""Parameters\n""----------\n"" tick : int\n"" tick number\n"" dt : double\n"" ticking interval\n") | |
PyDoc_STRVAR (moose_start_documentation,"start(time, notify = False) -> None\n""\n""Run simulation for `t` time. Advances the simulator clock by `t`\n""time. If 'notify = True', a message is written to terminal whenever \n""10\% of simulation time is over. \n""\n""After setting up a simulation, YOU MUST CALL MOOSE.REINIT() before\n""CALLING MOOSE.START() TO EXECUTE THE SIMULATION. Otherwise, the\n""simulator behaviour will be undefined. Once moose.reinit() has been\n""called, you can call moose.start(t) as many time as you like. This\n""will continue the simulation from the last state for `t` time.\n""\n""Parameters\n""----------\n""t : float\n"" duration of simulation.\n""notify: bool\n"" default False. If True, notify user whenever 10\% of simultion \n"" is over.\n""\n""Returns\n""--------\n"" None\n""\n""See also\n""--------\n""moose.reinit : (Re)initialize simulation\n""\n") | |
PyDoc_STRVAR (moose_reinit_documentation,"reinit() -> None\n""\n""Reinitialize simulation.\n""\n""This function (re)initializes moose simulation. It must be called\n""before you start the simulation (see moose.start). If you want to\n""continue simulation after you have called moose.reinit() and\n""moose.start(), you must NOT call moose.reinit() again. Calling\n""moose.reinit() again will take the system back to initial setting\n""(like clear out all data recording tables, set state variables to\n""their initial values, etc.\n""\n") | |
PyDoc_STRVAR (moose_loadModel_documentation,"loadModel(filename, modelpath, solverclass) -> vec\n""\n""Load model from a file to a specified path.\n""\n""Parameters\n""----------\n""filename : str\n"" model description file.\n""modelpath : str\n"" moose path for the top level element of the model to be created.\n""solverclass : str, optional\n"" solver type to be used for simulating the model.\n""\n""Returns\n""-------\n""vec\n"" loaded model container vec.\n") | |
PyDoc_STRVAR (moose_connect_documentation,"connect(src, srcfield, destobj, destfield[,msgtype]) -> bool\n""\n""Create a message between `src_field` on `src` object to `dest_field` on `dest` object.\n""This function is used mainly, to say, connect two entities, and to denote what kind of give-and-take relationship they share.""It enables the 'destfield' (of the 'destobj') to acquire the data, from 'srcfield'(of the 'src').""\n""Parameters\n""----------\n""src : element/vec/string\n"" the source object (or its path) \n"" (the one that provides information)\n""srcfield : str\n"" source field on self.(type of the information)\n""destobj : element\n"" Destination object to connect to.\n"" (The one that need to get information)\n""destfield : str\n"" field to connect to on `destobj`.\n""msgtype : str\n"" type of the message. Can be \n"" `Single` - \n"" `OneToAll` - \n"" `AllToOne` - \n"" `OneToOne` - \n"" `Reduce` - \n"" `Sparse` - \n"" Default: `Single`.\n""\n""Returns\n""-------\n""msgmanager: melement\n"" message-manager for the newly created message.\n""\n""Examples\n""--------\n""Connect the output of a pulse generator to the input of a spike\n""generator::\n""\n"" >>> pulsegen = moose.PulseGen('pulsegen')\n"" >>> spikegen = moose.SpikeGen('spikegen')\n"" >>> pulsegen.connect('output', spikegen, 'Vm')\n""\n""See also\n""--------\n""moose.connect\n") | |
PyDoc_STRVAR (moose_getFieldDict_documentation,"getFieldDict(className, finfoType) -> dict\n""\n""Get dictionary of field names and types for specified class.\n""\n""Parameters\n""----------\n""className : str\n"" MOOSE class to find the fields of.\n""finfoType : str (optional)\n"" Finfo type of the fields to find. If empty or not specified, all\n"" fields will be retrieved.\n""\n""Returns\n""-------\n""dict\n"" field names and their types.\n""\n""Notes\n""-----\n"" This behaviour is different from `getFieldNames` where only\n"" `valueFinfo`s are returned when `finfoType` remains unspecified.\n""\n""Examples\n""--------\n""List all the source fields on class Neutral::\n""\n"">>> moose.getFieldDict('Neutral', 'srcFinfo')\n"" {'childMsg': 'int'}\n""\n""\n") | |
PyDoc_STRVAR (moose_seed_documentation,"moose.seed(seedvalue) -> seed \n""\n""Reseed MOOSE random number generator.\n""\n""Parameters\n""----------\n""seed : int\n"" Value to use for seeding. \n"" All RNGs in moose except rand functions in moose.Function \n"" expression use this seed.\n"" By default (when this function is not called) seed is initializecd \n"" to some random value using system random device (if available). \n"" \n""\n"" default: random number generated using system random device\n""\n""Returns\n""-------\n""None\n""\n""See also\n""--------\n""moose.rand() : get a pseudorandom number in the [0,1) interval.\n") | |
PyDoc_STRVAR (moose_rand_documentation,"moose.rand() -> [0,1)\n""\n""Returns\n""-------\n""float in [0, 1) real interval generated by MT19937.\n""\n""See also\n""--------\n""moose.seed() : reseed the random number generator.\n""\n""Notes\n""-----\n""MOOSE does not automatically seed the random number generator. You\n""must explicitly call moose.seed() to create a new sequence of random\n""numbers each time.\n""\n") | |
PyDoc_STRVAR (moose_wildcardFind_documentation,"moose.wildcardFind(expression) -> tuple of melements.\n""\n""Find an object by wildcard.\n""\n""Parameters\n""----------\n""expression : str\n"" MOOSE allows wildcard expressions of the form::\n""\n"" {PATH}/{WILDCARD}[{CONDITION}]\n""\n"" where {PATH} is valid path in the element tree.\n"" `{WILDCARD}` can be `#` or `##`.\n""\n"" `#` causes the search to be restricted to the children of the\n"" element specified by {PATH}.\n""\n"" `##` makes the search to recursively go through all the descendants\n"" of the {PATH} element.\n"" {CONDITION} can be::\n""\n"" TYPE={CLASSNAME} : an element satisfies this condition if it is of\n"" class {CLASSNAME}.\n"" ISA={CLASSNAME} : alias for TYPE={CLASSNAME}\n"" CLASS={CLASSNAME} : alias for TYPE={CLASSNAME}\n"" FIELD({FIELDNAME}){OPERATOR}{VALUE} : compare field {FIELDNAME} with\n"" {VALUE} by {OPERATOR} where {OPERATOR} is a comparison operator (=,\n"" !=, >, <, >=, <=).\n""\n"" For example, /mymodel/##[FIELD(Vm)>=-65] will return a list of all\n"" the objects under /mymodel whose Vm field is >= -65.\n""\n""Returns\n""-------\n""tuple\n"" all elements that match the wildcard.\n""\n") | |
PyDoc_STRVAR (moose_Class_documentation,"*-----------------------------------------------------------------*\n""* This is Python generated documentation. *\n""* Use moose.doc('classname') to display builtin documentation for *\n""* class `classname`. *\n""* Use moose.doc('classname.fieldname') to display builtin *\n""* documentation for `field` in class `classname`. *\n""*-----------------------------------------------------------------*\n") | |
PyDoc_STRVAR (moose_element_documentation,"moose.element(arg) -> moose object\n""\n""Convert a path or an object to the appropriate builtin moose class\n""instance\n""\n""Parameters\n""----------\n""arg : str/vec/moose object\n"" path of the moose element to be converted or another element (possibly\n"" available as a superclass instance).\n""\n""Returns\n""-------\n""melement\n"" MOOSE element (object) corresponding to the `arg` converted to write subclass.\n""\n") | |
PyDoc_STRVAR (moose_module_documentation,"MOOSE = Multiscale Object-Oriented Simulation Environment.\n""\n""Moose is the core of a modern software platform for the simulation\n""of neural systems ranging from subcellular components and\n""biochemical reactions to complex models of single neurons, large\n""networks, and systems-level processes.") | |
double | pymoose_mtrand_ (void) |
void | pymoose_mtseed_ (long int seed) |
vector< int > | pysequence_to_dimvec (PyObject *dims) |
vector< string > | setup_runtime_env () |
void | speedTestMultiNodeIntFireNetwork (unsigned int size, unsigned int runsteps) |
void | test_moosemodule () |
void * | to_cpp (PyObject *object, char typecode) |
PyObject * | to_py (void *obj, char typecode) |
PyObject * | to_pytuple (void *obj, char typecode) |
Variables | |
static int | doRegressionTests = 0 |
static int | doUnitTests = 0 |
PyTypeObject | IdType |
static int | isInfinite = 0 |
PyTypeObject | moose_DestField |
PyTypeObject | moose_ElementField |
PyTypeObject | moose_LookupField |
static PyMethodDef | MooseMethods [] |
static unsigned int | myNode = 0 |
static unsigned int | numCores = 1 |
static unsigned int | numNodes = 1 |
PyTypeObject | ObjIdType |
static int | quitFlag = 0 |
int | verbosity = 1 |
#define INITERROR return |
Definition at line 3091 of file moosemodule.cpp.
Referenced by MODINIT().
Definition at line 3092 of file moosemodule.cpp.
Utility function to get all the individual elements when ALLDATA is dataIndex.
Definition at line 113 of file moosemodule.cpp.
References Field< A >::get().
PyObject* convert_and_set_tuple_entry | ( | PyObject * | tuple, |
unsigned int | index, | ||
void * | vptr, | ||
char | typecode | ||
) |
Inner function to convert C++ object at vptr and set tuple entry ii to the created PyObject. typecode is passed to to_cpp for conversion. If error occurs while setting tuple antry, it decrements the refcount of the tuple and returns NULL. Returns the tuple on success.
Definition at line 491 of file moosemodule.cpp.
References to_py(), and verbosity.
Referenced by to_pytuple().
int defineAllClasses | ( | PyObject * | module_dict | ) |
Go through all elements under /classes and ask for defining a Python class for it.
Definition at line 2461 of file moosemodule.cpp.
References defineClass(), Cinfo::find(), and verbosity.
Referenced by MODINIT().
int defineClass | ( | PyObject * | module_dict, |
const Cinfo * | cinfo | ||
) |
Definition at line 2540 of file moosemodule.cpp.
References Cinfo::baseCinfo(), defineClass(), defineDestFinfos(), defineElementFinfos(), defineLookupFinfos(), get_getsetdefs(), get_moose_classes(), Cinfo::getBaseClass(), Cinfo::name(), ObjIdType, and verbosity.
Referenced by defineAllClasses(), and defineClass().
int defineDestFinfos | ( | const Cinfo * | cinfo | ) |
Definition at line 2714 of file moosemodule.cpp.
References get_getsetdefs(), Cinfo::getNumDestFinfo(), moose_ObjId_get_destField_attr(), Finfo::name(), Cinfo::name(), name, and verbosity.
Referenced by defineClass().
int defineElementFinfos | ( | const Cinfo * | cinfo | ) |
Definition at line 2863 of file moosemodule.cpp.
References get_getsetdefs(), Cinfo::getNumFieldElementFinfo(), moose_ObjId_get_elementField_attr(), Cinfo::name(), name, and verbosity.
Referenced by defineClass().
int defineLookupFinfos | ( | const Cinfo * | cinfo | ) |
Definition at line 2503 of file moosemodule.cpp.
References get_getsetdefs(), Cinfo::getNumLookupFinfo(), moose_ObjId_get_lookupField_attr(), Cinfo::name(), name, and verbosity.
Referenced by defineClass().
void destroyMsgManagers | ( | ) |
void finalize | ( | ) |
create_shell()
Clean up after yourself.
Definition at line 1017 of file moosemodule.cpp.
References Id::clearAllElements(), Msg::clearAllMsgs(), get_getsetdefs(), getShell(), and SHELLPTR.
Referenced by MODINIT(), and moose_quit().
const map<string, string>& get_field_alias | ( | ) |
map of fields which are aliased in Python to avoid collision with Python keywords.
Definition at line 850 of file moosemodule.cpp.
Referenced by moose_ElementField_getattro(), moose_Id_getattro(), and moose_ObjId_getattro().
map<string, vector <PyGetSetDef> >& get_getsetdefs | ( | ) |
Definition at line 840 of file moosemodule.cpp.
Referenced by defineClass(), defineDestFinfos(), defineElementFinfos(), defineLookupFinfos(), and finalize().
map<string, PyTypeObject *>& get_moose_classes | ( | ) |
Definition at line 833 of file moosemodule.cpp.
Referenced by defineClass(), getBaseClass(), MODINIT(), moose_ObjId_init_from_path(), moose_ObjId_setattro(), and oid_to_element().
PyTypeObject* getBaseClass | ( | PyObject * | self | ) |
Utility function to traverse python class hierarchy to reach closest base class. Ideally we should go via mro
Definition at line 1294 of file moosemodule.cpp.
References get_moose_classes(), and ObjIdType.
Referenced by moose_ObjId_init_from_path(), and testCinfoFields().
int getFieldDict | ( | string | className, |
string | finfoType, | ||
vector< string > & | fieldNames, | ||
vector< string > & | fieldTypes | ||
) |
Populate the fieldNames
vector with names of the fields of finfoType
in the specified class.
Populate the fieldTypes
vector with corresponding C++ data type string (Finfo.type).
Definition at line 1216 of file moosemodule.cpp.
References Cinfo::find(), Cinfo::getDestFinfo(), Cinfo::getFieldElementFinfo(), Cinfo::getLookupFinfo(), Cinfo::getNumDestFinfo(), Cinfo::getNumFieldElementFinfo(), Cinfo::getNumLookupFinfo(), Cinfo::getNumSrcFinfo(), Cinfo::getNumValueFinfo(), Cinfo::getSrcFinfo(), Cinfo::getValueFinfo(), Finfo::name(), and Finfo::rttiType().
Referenced by moose_getFieldDict().
vector<string> getFieldNames | ( | string | className, |
string | finfoType | ||
) |
Return a vector of field names of specified finfo type.
Definition at line 1148 of file moosemodule.cpp.
References Cinfo::find(), Cinfo::getDestFinfo(), Cinfo::getFieldElementFinfo(), Cinfo::getLookupFinfo(), Cinfo::getNumDestFinfo(), Cinfo::getNumFieldElementFinfo(), Cinfo::getNumLookupFinfo(), Cinfo::getNumSrcFinfo(), Cinfo::getNumValueFinfo(), Cinfo::getSrcFinfo(), Cinfo::getValueFinfo(), and Finfo::name().
Referenced by moose_getFieldNames(), moose_ObjId_getattro(), and moose_ObjId_getFieldNames().
string getFieldType | ( | string | className, |
string | fieldName | ||
) |
get the field type for specified field
Argument: className – class to look in
fieldName – field to look for
Return:
string – value of type field of the Finfo object. This is a comma separated list of C++ template arguments
Definition at line 1090 of file moosemodule.cpp.
References Cinfo::find(), Cinfo::findFinfo(), Finfo::rttiType(), and verbosity.
Referenced by moose_ElementField_getattro(), moose_ElementField_setattro(), moose_Id_getattro(), moose_Id_setattro(), moose_ObjId_getattro(), moose_ObjId_getFieldType(), moose_ObjId_setattro(), and parseFinfoType().
const char** getFinfoTypes | ( | ) |
Return list of available Finfo types. Place holder for static const to avoid static initialization issues.
Definition at line 1064 of file moosemodule.cpp.
Referenced by moose_ObjId_getFieldNames().
Id getShell | ( | int | argc, |
char ** | argv | ||
) |
Create the shell instance unless already created. This calls basecode/main.cpp:init(argc, argv) to do the initialization.
Return the Id of the Shell object.
Definition at line 967 of file moosemodule.cpp.
References Eref::data(), doRegressionTests, Shell::doSetClock(), doUnitTests, Shell::doUseClock(), Id::eref(), init(), mooseBenchmarks(), mpiTests(), Shell::myNode(), nonMpiTests(), Shell::numNodes(), and processTests().
Referenced by finalize(), handle_keyboard_interrupts(), and MODINIT().
void handle_keyboard_interrupts | ( | int | signum | ) |
Handle signal raised by user during simulation.
signum |
Definition at line 142 of file moosemodule.cpp.
References Shell::cleanSimulation(), Eref::data(), Id::eref(), getShell(), moose::info, and LOG.
Referenced by moose_start().
Id init | ( | int | argc, |
char ** | argv, | ||
bool & | doUnitTests, | ||
bool & | doRegressionTests, | ||
unsigned int & | benchmark | ||
) |
Here we allow the user to override the automatic identification of processor configuration
Sets up the Elements that represent each class of Msg.
Here we allow the user to override the automatic identification of processor configuration
Sets up the Elements that represent each class of Msg.
Definition at line 150 of file main.cpp.
References Shell::adopt(), Eref::data(), Id::eref(), getNumCores(), Clock::initCinfo(), PostMaster::initCinfo(), Neutral::initCinfo(), Shell::initCinfo(), Msg::initMsgManagers(), isInfinite, Shell::loadBalance(), Cinfo::makeCinfoElements(), myNode, Id::nextId(), numCores, numNodes, quitFlag, Cinfo::rebuildOpIndex(), Shell::setHardware(), Shell::setShellElement(), and Id::value().
Referenced by benchmarkMsg(), getShell(), Ksolve::initCinfo(), Gsolve::initCinfo(), moose::CompartmentBase::initCinfo(), NonlinearSystem::initialize(), main(), SteadyState::settle(), testAssortedMsg(), testCopyMsgOps(), testShellAddMsg(), and testSparseMatrix2().
void initMsgManagers | ( | ) |
PyMODINIT_FUNC MODINIT | ( | _moose | ) |
Definition at line 3095 of file moosemodule.cpp.
References defineAllClasses(), doUnitTests, module_state::error, moose::error, finalize(), get_moose_classes(), getShell(), GETSTATE, IdType, moose::info, INITERROR, isInfinite, LOG, moose_DestField, moose_ElementField, moose_LookupField, myNode, numCores, numNodes, ObjIdType, setup_runtime_env(), SHELLPTR, and test_moosemodule().
PyObject* moose_connect | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 1982 of file moosemodule.cpp.
References ObjId::bad(), ObjId::id, _Id::id_, Id_SubtypeCheck, Id::isValid(), ObjId_SubtypeCheck, _ObjId::oid_, oid_to_element(), RAISE_INVALID_ID, and SHELLPTR.
PyObject* moose_copy | ( | PyObject * | dummy, |
PyObject * | args, | ||
PyObject * | kwargs | ||
) |
Definition at line 1391 of file moosemodule.cpp.
References ObjId::bad(), Field< A >::get(), _Id::id_, Id::id_, IdType, Id::isValid(), name, ObjIdType, RAISE_INVALID_ID, and SHELLPTR.
PyObject* moose_delete | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 1544 of file moosemodule.cpp.
References ObjId::bad(), BADINDEX, deleteObjId(), IdType, ObjIdType, and RAISE_INVALID_ID.
PyObject* moose_element | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 2931 of file moosemodule.cpp.
References ObjId::bad(), ElementField_SubtypeCheck, id, IdType, moose_ElementField_getId(), ObjIdType, oid_to_element(), and path.
PyObject* moose_exists | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 1764 of file moosemodule.cpp.
References path.
PyObject* moose_getCwe | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 1921 of file moosemodule.cpp.
References oid_to_element(), and SHELLPTR.
PyObject* moose_getField | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 2145 of file moosemodule.cpp.
References Field< A >::get(), ObjId::id, _Id::id_, IdType, Id::isValid(), ObjIdType, _ObjId::oid_, RAISE_INVALID_ID, and value.
PyObject* moose_getFieldDict | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 2081 of file moosemodule.cpp.
References getFieldDict(), and value.
PyObject* moose_getFieldNames | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 1341 of file moosemodule.cpp.
References getFieldNames().
PyObject* moose_isRunning | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
PyObject* moose_loadModel | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 1794 of file moosemodule.cpp.
References _Id::id_, IdType, and SHELLPTR.
PyObject* moose_move | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 1468 of file moosemodule.cpp.
References ObjId::bad(), Id::id_, IdType, Id::isValid(), ObjIdType, RAISE_INVALID_ID, and SHELLPTR.
PyObject* moose_ObjId_get_destField_attr | ( | PyObject * | self, |
void * | closure | ||
) |
Definition at line 2677 of file moosemodule.cpp.
References ObjId::id, Id::isValid(), moose_DestField, name, ObjIdType, _ObjId::oid_, and RAISE_INVALID_ID.
Referenced by defineDestFinfos().
PyObject* moose_ObjId_get_elementField_attr | ( | PyObject * | self, |
void * | closure | ||
) |
Definition at line 2822 of file moosemodule.cpp.
References ObjId::id, Id::isValid(), moose_ElementField, name, _ObjId::oid_, and RAISE_INVALID_ID.
Referenced by defineElementFinfos().
PyObject* moose_ObjId_get_lookupField_attr | ( | PyObject * | self, |
void * | closure | ||
) |
Try to obtain a LookupField object for a specified lookupFinfo. The first item in closure
must be the name of the LookupFinfo - {fieldname}. The LookupField is identified by {path}.{fieldname} where {path} is the unique path of the moose element self
. We look for an already initialized LookupField object for this identifier and return if one is found. Otherwise, we create a new LookupField object and buffer it in a map before returning.
Definition at line 2781 of file moosemodule.cpp.
References ObjId::id, Id::isValid(), moose_LookupField, name, ObjIdType, _ObjId::oid_, and RAISE_INVALID_ID.
Referenced by defineLookupFinfos().
PyObject* moose_quit | ( | PyObject * | dummy | ) |
This should not be required or accessible to the user. Put here for debugging threading issue.
Definition at line 2450 of file moosemodule.cpp.
References finalize().
PyObject* moose_rand | ( | PyObject * | dummy | ) |
Definition at line 2368 of file moosemodule.cpp.
References pymoose_mtrand_().
PyObject* moose_reinit | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
PyObject* moose_seed | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 2339 of file moosemodule.cpp.
References pymoose_mtseed_().
PyObject* moose_setClock | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
PyObject* moose_setCwe | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 1879 of file moosemodule.cpp.
References ObjId::bad(), IdType, ObjIdType, path, RAISE_INVALID_ID, and SHELLPTR.
PyObject* moose_start | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 1703 of file moosemodule.cpp.
References handle_keyboard_interrupts(), and SHELLPTR.
PyObject* moose_stop | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
PyObject* moose_useClock | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
PyObject* moose_wildcardFind | ( | PyObject * | dummy, |
PyObject * | args | ||
) |
Definition at line 2412 of file moosemodule.cpp.
References oid_to_element(), and wildcardFind().
void mooseBenchmarks | ( | unsigned int | option | ) |
void mpiTests | ( | ) |
These are tests that are MPI safe. They should also run properly on single nodes.
Definition at line 350 of file main.cpp.
References testMpiBuiltins(), testMpiMsg(), testMpiScheduling(), and testMpiShell().
Referenced by getShell(), and main().
void nonMpiTests | ( | Shell * | s | ) |
These tests are meant to run on individual nodes, and should not invoke MPI calls. They should not be run when MPI is running. These tests do not use the threaded/MPI event loop and are the most basic of the set.
Definition at line 297 of file main.cpp.
References Shell::myNode(), numCores, Shell::numCores(), numNodes, Shell::numNodes(), Shell::setHardware(), testAsync(), testBiophysics(), testBuiltins(), testDiffusion(), testHSolve(), testKsolve(), testMesh(), testMsg(), testScheduling(), testShell(), testSigNeur(), and testSynapse().
Referenced by getShell(), and main().
PyObject* oid_to_element | ( | ObjId | oid | ) |
Definition at line 2899 of file moosemodule.cpp.
References Field< A >::get(), get_moose_classes(), and _ObjId::oid_.
Referenced by moose_connect(), moose_element(), moose_ElementField_getItem(), moose_ElementField_getSlice(), moose_getCwe(), moose_Id_fillSlice(), moose_Id_getItem(), and moose_wildcardFind().
int parseFinfoType | ( | string | className, |
string | finfoType, | ||
string | fieldName, | ||
vector< string > & | typeVec | ||
) |
Parse the type field of Finfo objects.
The types field is a comma separated list of the template arguments. We populate typeVec
with the individual type strings.
Definition at line 1122 of file moosemodule.cpp.
References getFieldType(), maxArgs, shortType(), and moose::tokenize().
Referenced by getLookupField(), moose_ObjId_setDestField(), and setLookupField().
void processTests | ( | Shell * | s | ) |
These tests involve the threaded/MPI process loop and are the next level of tests.
Definition at line 333 of file main.cpp.
References testBiophysicsProcess(), testBuiltinsProcess(), testSchedulingProcess(), and testSigNeurProcess().
Referenced by getShell(), and main().
PyDoc_STRVAR | ( | moose_getFieldNames_documentation | , |
"getFieldNames(className, finfoType='valueFinfo') -> tuple\n""\n""Get a tuple containing the name of all the fields of `finfoType`\n""kind.\n""\n""Parameters\n""----------\n""className : string\n"" Name of the class to look up.\n""finfoType : string\n"" The kind of field "" `valueFinfo` - "" `srcFinfo` - "" `destFinfo` - "" `lookupFinfo`- "" `fieldElementFinfo` - \n""\n""Returns\n""-------\n""tuple\n"" Names of the fields of type `finfoType` in class `className`.\n" | |||
) |
PyDoc_STRVAR | ( | moose_copy_documentation | , |
"copy(src, dest, name, n, toGlobal, copyExtMsg) -> bool\n""\n""Make copies of a moose object.\n""\n""Parameters\n""----------\n""src : | vec, | ||
element or str\n""source object.\n""dest:vec | , | ||
element or str\n""Destination object to copy into.\n""name:str\n""Name of the new object.If | omitted, | ||
name of the original will be used.\n""n:int\n""Number of copies to make.\n""toGlobal:int\n""Relevant for parallel environments only.If | false, | ||
the copies will\n""reside on local | node, | ||
otherwise all nodes get the copies.\n""copyExtMsg:int\n""If | true, | ||
messages to/from external objects are also copied.\n""\n""Returns\n""-------\n""vec\n""newly copied vec\n" | |||
) |
PyDoc_STRVAR | ( | moose_delete_documentation | , |
"delete(obj)->None\n""\n""Delete the underlying moose object. This does not delete any of the\n""Python objects referring to this vec but does invalidate them. Any\n""attempt to access them will raise a ValueError.\n""\n""Parameters\n""----------\n""id : vec\n"" vec of the object to be deleted.\n""\n""Returns\n""-------\n""None\n" | |||
) |
PyDoc_STRVAR | ( | moose_useClock_documentation | , |
"useClock(tick, path, fn)\n\n""schedule `fn` function of every object that matches `path` on tick no. `tick`.\n\n ""Most commonly the function is 'process'. NOTE: unlike earlier | versions, | ||
now autoschedule is not available.You have to call useClock for every element that should be updated during the simulation.\n\n""The sequence of clockticks with the same dt is according to their number.This is utilized for controlling the order of updates in various objects where it matters.The following convention should be observed when assigning clockticks to various components of a model:\n\n""Clock ticks 0-3 are for electrical(biophysical) | components, | ||
4 and 5 are for chemical | kinetics, | ||
6 and 7 are for lookup tables and | stimulus, | ||
8 and 9 are for recording tables.\n\n"" | Generally, | ||
`process`is the method to be assigned a clock tick.Notable exception is`init`method of Compartment class which is assigned tick 0.\n\n""-0:Compartment:`init`\n""-1:Compartment:`process`\n""-2:HHChannel and other channels:`process`\n""-3:CaConc:`process`\n""- | 4, | ||
5:Elements for chemical kinetics:`process`\n""- | 6, | ||
7: | Lookuptables, | ||
stimulus:`process`\n""- | 8, | ||
9:Tables for plotting:`process`\n""\n""Parameters\n""----------\n""tick:int\n""tick number on which the targets should be scheduled.\n""path:str\n""path of the target element(s).This can be a wildcard also.\n""fn:str\n""name of the function to be called on each tick.Commonly`process`.\n""\n""Examples\n""--------\n""In multi-compartmental neuron model a compartment's membrane potential(Vm) is dependent on its neighbours'membrane potential.Thus it must get the neighbour's present Vm before computing its own Vm in next time step.This ordering is achieved by scheduling the`init` | function, | ||
which communicates membrane | potential, | ||
on tick 0 and`process`function on tick 1.\n\n"" >> | , | ||
moose.useClock(0, '/model/compartment_1', 'init')\n"" >> | , | ||
moose.useClock(1, '/model/compartment_1', 'process')\n" | |||
) |
PyDoc_STRVAR | ( | moose_setClock_documentation | , |
"setClock(tick, dt)\n""\n""set the ticking interval of `tick` to `dt`.\n""\n""A tick with interval `dt` will call the functions scheduled on that tick every `dt` timestep.\n""\n""Parameters\n""----------\n"" tick : int\n"" tick number\n"" dt : double\n"" ticking interval\n" | |||
) |
PyDoc_STRVAR | ( | moose_start_documentation | , |
"start(time, notify = False) -> None\n""\n""Run simulation for `t` time. Advances the simulator clock by `t`\n""time. If ' | notify = True' , |
||
a message is written to terminal whenever\n""10\%of simulation time is over.\n""\n""After setting up a | simulation, | ||
YOU MUST CALL MOOSE.REINIT() before\n""CALLING MOOSE.START() TO EXECUTE THE SIMULATION. | Otherwise, | ||
the\n""simulator behaviour will be undefined.Once moose.reinit() has been\n"" | called, | ||
you can call moose.start(t) as many time as you like.This\n""will continue the simulation from the last state for`t`time.\n""\n""Parameters\n""----------\n""t:float\n""duration of simulation.\n""notify:bool\n""default False.If | True, | ||
notify user whenever 10\%of simultion\n""is over.\n""\n""Returns\n""--------\n""None\n""\n""See also\n""--------\n""moose.reinit:(Re) initialize simulation\n""\n" | |||
) |
PyDoc_STRVAR | ( | moose_reinit_documentation | , |
" | reinit) -> None\n""\n""Reinitialize simulation.\n""\n""This function (re)initializes moose simulation. It must be called\n""before you start the simulation (see moose.start). If you want to\n""continue simulation after you have called moose.reinit() and\n""moose.start( | ||
) |
PyDoc_STRVAR | ( | moose_loadModel_documentation | , |
"loadModel(filename, modelpath, solverclass) -> vec\n""\n""Load model from a file to a specified path.\n""\n""Parameters\n""----------\n""filename : str\n"" model description file.\n""modelpath : str\n"" moose path for the top level element of the model to be created.\n""solverclass : | str, | ||
optional\n""solver type to be used for simulating the model.\n""\n""Returns\n""-------\n""vec\n""loaded model container vec.\n" | |||
) |
PyDoc_STRVAR | ( | moose_connect_documentation | , |
"connect(src, srcfield, destobj, destfield[,msgtype]) -> bool\n""\n""Create a message between `src_field` on `src` object to `dest_field` on `dest` object.\n""This function is used | mainly, | ||
to | say, | ||
connect two | entities, | ||
and to denote what kind of give-and-take relationship they share.""It enables the 'destfield'(of the 'destobj') to acquire the | data, | ||
from 'srcfield'(of the 'src').""\n""Parameters\n""----------\n""src:element/vec/string\n""the source object(or its path)\n""(the one that provides information)\n""srcfield:str\n""source field on self.(type of the information)\n""destobj:element\n""Destination object to connect to.\n""(The one that need to get information)\n""destfield:str\n""field to connect to on`destobj`.\n""msgtype:str\n""type of the message.Can be\n""`Single`-\n""`OneToAll`-\n""`AllToOne`-\n""`OneToOne`-\n""`Reduce`-\n""`Sparse`-\n""Default:`Single`.\n""\n""Returns\n""-------\n""msgmanager:melement\n""message-manager for the newly created message.\n""\n""Examples\n""--------\n""Connect the output of a pulse generator to the input of a spike\n""generator::\n""\n"" >> | , | ||
pulsegen | = moose.PulseGen('pulsegen')\n"" >> , |
||
spikegen | = moose.SpikeGen('spikegen')\n"" >> , |
||
pulsegen.connect('output', spikegen, 'Vm')\n""\n""See also\n""--------\n""moose.connect\n" | |||
) |
PyDoc_STRVAR | ( | moose_getFieldDict_documentation | , |
"getFieldDict(className, finfoType) -> dict\n""\n""Get dictionary of field names and types for specified class.\n""\n""Parameters\n""----------\n""className : str\n"" MOOSE class to find the fields of.\n""finfoType : str (optional)\n"" Finfo type of the fields to find. If empty or not | specified, | ||
all\n""fields will be retrieved.\n""\n""Returns\n""-------\n""dict\n""field names and their types.\n""\n""Notes\n""-----\n""This behaviour is different from`getFieldNames`where only\n""`valueFinfo`s are returned when`finfoType`remains unspecified.\n""\n""Examples\n""--------\n""List all the source fields on class Neutral::\n""\n"">> | , | ||
moose.getFieldDict('Neutral', 'srcFinfo')\n""{'childMsg': 'int'}\n""\n""\n" | |||
) |
PyDoc_STRVAR | ( | moose_seed_documentation | , |
"moose.seed(seedvalue) -> seed \n""\n""Reseed MOOSE random number generator.\n""\n""Parameters\n""----------\n""seed : int\n"" Value to use for seeding. \n"" All RNGs in moose except rand functions in moose.Function \n"" expression use this seed.\n"" By default (when this function is not called) seed is initializecd \n"" to some random value using system random device (if available). \n"" \n""\n"" default: random number generated using system random device\n""\n""Returns\n""-------\n""None\n""\n""See also\n""--------\n""moose.rand() : get a pseudorandom number in the [ | 0, | ||
1 | |||
) |
PyDoc_STRVAR | ( | moose_rand_documentation | , |
"moose.rand() -> [ | 0, | ||
1 | |||
) |
PyDoc_STRVAR | ( | moose_wildcardFind_documentation | , |
"moose.wildcardFind(expression) -> tuple of melements.\n""\n""Find an object by wildcard.\n""\n""Parameters\n""----------\n""expression : str\n"" MOOSE allows wildcard expressions of the form::\n""\n"" {PATH}/{WILDCARD}\n""\n"" where {PATH} is valid path in the element tree.\n"" `{WILDCARD}` can be `#` or `##`.\n""\n"" `#` causes the search to be restricted to the children of the\n"" element specified by {PATH}.\n""\n"" `##` makes the search to recursively go through all the descendants\n"" of the {PATH} element.\n"" {CONDITION} can be::\n""\n"" | TYPE[{CONDITION}] = {CLASSNAME} : an element satisfies this condition if it is of\n"" class {CLASSNAME}.\n"" ISA={CLASSNAME} : alias for TYPE={CLASSNAME}\n"" CLASS={CLASSNAME} : alias for TYPE={CLASSNAME}\n"" FIELD({FIELDNAME}){OPERATOR}{VALUE} : compare field {FIELDNAME} with\n"" {VALUE} by {OPERATOR} where {OPERATOR} is a comparison operator (=,\n"" !=, >, <, >=, <=).\n""\n"" For example , |
||
/mymodel/##will return a list of all\n""the objects under/mymodel whose Vm field is >=-65.\n""\n""Returns\n""-------\n""tuple\n""all elements that match the wildcard.\n""\n" | [FIELD(Vm)>=-65] | ||
) |
PyDoc_STRVAR | ( | moose_Class_documentation | , |
"*-----------------------------------------------------------------*\n""* This is Python generated documentation. *\n""* Use moose.doc('classname') to display builtin documentation for *\n""* class `classname`. *\n""* Use moose.doc('classname.fieldname') to display builtin *\n""* documentation for `field` in class `classname`. *\n""*-----------------------------------------------------------------*\n" | |||
) |
An attempt to define classes dynamically http://stackoverflow.com/questions/8066438/how-to-dynamically-create-a-derived-type-in-the-python-c-api gives a clue We pass class_name in stead of class_id because we have to recursively call this function using the base class string.
PyDoc_STRVAR | ( | moose_element_documentation | , |
"moose.element(arg) -> moose object\n""\n""Convert a path or an object to the appropriate builtin moose class\n""instance\n""\n""Parameters\n""----------\n""arg : str/vec/moose object\n"" path of the moose element to be converted or another element (possibly\n"" available as a superclass instance).\n""\n""Returns\n""-------\n""melement\n"" MOOSE element (object) corresponding to the `arg` converted to write subclass.\n""\n" | |||
) |
PyDoc_STRVAR | ( | moose_module_documentation | , |
" | MOOSE = Multiscale Object-Oriented Simulation Environment.\n""\n""Moose is the core of a modern software platform for the simulation\n""of neural systems ranging from subcellular components and\n""biochemical reactions to complex models of single neurons , |
||
large\n"" | networks, | ||
and systems-level processes." | |||
) |
double pymoose_mtrand_ | ( | void | ) |
Definition at line 105 of file moosemodule.cpp.
References moose::mtrand().
Referenced by moose_rand().
void pymoose_mtseed_ | ( | long int | seed | ) |
Definition at line 100 of file moosemodule.cpp.
References moose::mtseed().
Referenced by moose_seed().
vector<int> pysequence_to_dimvec | ( | PyObject * | dims | ) |
Utility function to convert an Python integer or a sequence object into a vector of dimensions
Definition at line 178 of file moosemodule.cpp.
vector<string> setup_runtime_env | ( | ) |
Get the environment variables and set runtime environment based on them.
Definition at line 880 of file moosemodule.cpp.
References doRegressionTests, doUnitTests, moose::getArgMap(), isInfinite, numCores, numNodes, quitFlag, and verbosity.
Referenced by MODINIT().
void speedTestMultiNodeIntFireNetwork | ( | unsigned int | size, |
unsigned int | runsteps | ||
) |
void test_moosemodule | ( | ) |
Definition at line 138 of file test_moosemodule.cpp.
References test_to_py().
Referenced by MODINIT().
void* to_cpp | ( | PyObject * | object, |
char | typecode | ||
) |
Convert Python object into C++ data structure. The data structure is allocated here and it is the responsibility of the caller to free that memory.
Definition at line 222 of file moosemodule.cpp.
References _Id::id_, _ObjId::oid_, and value.
Referenced by _set_vector_destFinfo(), lookup_value(), moose_ObjId_setattro(), PySequenceToVector(), and set_lookup_value().
PyObject* to_py | ( | void * | obj, |
char | typecode | ||
) |
Utility function to convert C++ object into Python object.
Definition at line 352 of file moosemodule.cpp.
References id, IdType, innerType(), ObjIdType, _ObjId::oid_, and to_pytuple().
Referenced by convert_and_set_tuple_entry(), get_simple_lookupfield(), moose_ObjId_getattro(), and test_to_py().
PyObject* to_pytuple | ( | void * | obj, |
char | typecode | ||
) |
Convert a C++ vector to Python tuple
Definition at line 515 of file moosemodule.cpp.
References convert_and_set_tuple_entry().
Referenced by get_vec_lookupfield(), moose_ElementField_getattro(), moose_Id_getattro(), and to_py().
|
static |
Definition at line 171 of file moosemodule.cpp.
Referenced by moose::getArgMap(), getShell(), main(), and setup_runtime_env().
|
static |
Definition at line 170 of file moosemodule.cpp.
Referenced by moose::getArgMap(), getShell(), main(), MODINIT(), and setup_runtime_env().
PyTypeObject IdType |
Definition at line 262 of file vec.cpp.
Referenced by MODINIT(), moose_copy(), moose_delete(), moose_element(), moose_getField(), moose_Id_init(), moose_Id_richCompare(), moose_loadModel(), moose_move(), moose_setCwe(), and to_py().
|
static |
Definition at line 165 of file moosemodule.cpp.
Referenced by moose::getArgMap(), init(), MODINIT(), and setup_runtime_env().
PyTypeObject moose_DestField |
Definition at line 333 of file mfield.cpp.
Referenced by MODINIT(), and moose_ObjId_get_destField_attr().
PyTypeObject moose_ElementField |
Definition at line 473 of file mfield.cpp.
Referenced by MODINIT(), and moose_ObjId_get_elementField_attr().
PyTypeObject moose_LookupField |
Definition at line 252 of file mfield.cpp.
Referenced by MODINIT(), and moose_ObjId_get_lookupField_attr().
|
static |
Definition at line 3008 of file moosemodule.cpp.
|
static |
Definition at line 168 of file moosemodule.cpp.
Referenced by init(), PostMaster::initCinfo(), MODINIT(), and testFilterOffNodeTargets().
|
static |
Definition at line 167 of file moosemodule.cpp.
Referenced by moose::getArgMap(), init(), MODINIT(), nonMpiTests(), and setup_runtime_env().
|
static |
Definition at line 166 of file moosemodule.cpp.
Referenced by clearPending(), moose::getArgMap(), init(), PostMaster::initCinfo(), main(), MODINIT(), nonMpiTests(), and setup_runtime_env().
PyTypeObject ObjIdType |
|
static |
Definition at line 172 of file moosemodule.cpp.
Referenced by setup_runtime_env().
int verbosity = 1 |
Definition at line 163 of file moosemodule.cpp.
Referenced by convert_and_set_tuple_entry(), defineAllClasses(), defineClass(), defineDestFinfos(), defineElementFinfos(), defineLookupFinfos(), deleteObjId(), moose::getArgMap(), getFieldType(), and setup_runtime_env().