Eidolon
|
Classes | |
class | CardiacMotionPlugin |
class | CardiacMotionProject |
class | CardiacMotionPropWidget |
class | TestCardiacMotionPlugin |
Functions | |
def | avgDevRange (vals, stddevDist=1.0) |
def | calculateLVDirectionalFields (ds, longaxis, radialname, longname, circumname) |
def | createStrainGrid (nodes, toRefSpace, toImgSpace, h) |
def | createStrainField (nodes, radialfield, longfield, circumfield, h) |
def | strainTensor (px, mx, py, my, pz, mz, hh) |
def | tensorMul (E, v) |
def | calculateStrainTensors (nodes_t, h) |
def | calculateTensorIndicatorEigen (tensors) |
def | calculateTensorMul (tensors, vecmat, name) |
def | divideTrisByRegionRange (process, tris, nodeprops, regionfield, choosevals) |
def | divideMeshSurfaceByRegion (dataset, regionfield, choosevals, task=None) |
def | calculateRegionThicknessesRange (process, trinodes, stddevRange, triindlist) |
def | calculateRegionThicknesses (datasetlist, regionfield, choosevals, stddevRange=1.0, task=None) |
def | calculateAvgDisplacementRange (process, orignodes, trinodes, stddevRange, triindlist) |
def | calculateAvgDisplacement (datasetlist, regionfield, choosevals, stddevRange=1.0, task=None) |
def | calculateLinTetVolumeRange (process, nodelist, fieldlist, inds, regionfield, choosevals) |
def | calculateLinTetVolume (datasetlist, regionfield, choosevals, task=None) |
def | calculateMaskVolume (imgobj, calculateInner=True) |
def | calculateTorsion (datasetlist, aha, choosevals) |
def | calculateTriAreasRange (process, nodes, inds, result) |
def | calculateTriAreas (nodes, inds, task=None) |
def | calculateRegionSumField (field, regionfield, choosevals) |
Variables | |
ConfigNames | |
def eidolon.plugins.CardiacMotionPlugin.avgDevRange | ( | vals, | |
stddevDist = 1.0 |
|||
) |
Calculate the average of values from `vals' which are within `stddevDist' standard deviations of the average.
def eidolon.plugins.CardiacMotionPlugin.calculateAvgDisplacement | ( | datasetlist, | |
regionfield, | |||
choosevals, | |||
stddevRange = 1.0 , |
|||
task = None |
|||
) |
def eidolon.plugins.CardiacMotionPlugin.calculateAvgDisplacementRange | ( | process, | |
orignodes, | |||
trinodes, | |||
stddevRange, | |||
triindlist | |||
) |
def eidolon.plugins.CardiacMotionPlugin.calculateLinTetVolume | ( | datasetlist, | |
regionfield, | |||
choosevals, | |||
task = None |
|||
) |
def eidolon.plugins.CardiacMotionPlugin.calculateLinTetVolumeRange | ( | process, | |
nodelist, | |||
fieldlist, | |||
inds, | |||
regionfield, | |||
choosevals | |||
) |
def eidolon.plugins.CardiacMotionPlugin.calculateLVDirectionalFields | ( | ds, | |
longaxis, | |||
radialname, | |||
longname, | |||
circumname | |||
) |
def eidolon.plugins.CardiacMotionPlugin.calculateMaskVolume | ( | imgobj, | |
calculateInner = True |
|||
) |
def eidolon.plugins.CardiacMotionPlugin.calculateRegionSumField | ( | field, | |
regionfield, | |||
choosevals | |||
) |
def eidolon.plugins.CardiacMotionPlugin.calculateRegionThicknesses | ( | datasetlist, | |
regionfield, | |||
choosevals, | |||
stddevRange = 1.0 , |
|||
task = None |
|||
) |
Computes the region thicknesses for each mesh defines by the list of datasets in `datasetlist'. The value list `choosevals' defines the region numbers of interest, and `regionfield' is a field which labels each element of the mesh with a number; each value of `choosevals' must be found in this set of labels. For each dataset, the resulting list will contain a list of thickness values, one for each label in `choosevals'. Assuming the datasets represent a moving mesh in time, the rows of the returned matrix represent thickness in time, and the columns represent the thicknesses for each region.
def eidolon.plugins.CardiacMotionPlugin.calculateRegionThicknessesRange | ( | process, | |
trinodes, | |||
stddevRange, | |||
triindlist | |||
) |
Returns the averaged thickness of each triangle mesh given in `triindlist'. It is assumed that the name of each such topology matrix is of the form "choose_X_Y" where X is the ID of the process in divideTrisByElemValRange() which created the matrix, and Y corresponds to the region number that mesh belongs to. The return value is a list of pairs, one for each member of `triindlist', containing Y and the computed average thickness.
def eidolon.plugins.CardiacMotionPlugin.calculateStrainTensors | ( | nodes_t, | |
h | |||
) |
Calculate the tensors for each row of `nodes_t', which is the transformed node and its 6 transformed strain vectors. The result is a 9 column matrix where each row is a tensor matrix laid out in row-column order.
def eidolon.plugins.CardiacMotionPlugin.calculateTensorIndicatorEigen | ( | tensors | ) |
Calculate the maximal and minimal eigenvalue for each tensor matrix in `tensors.
def eidolon.plugins.CardiacMotionPlugin.calculateTensorMul | ( | tensors, | |
vecmat, | |||
name | |||
) |
def eidolon.plugins.CardiacMotionPlugin.calculateTorsion | ( | datasetlist, | |
aha, | |||
choosevals | |||
) |
Calculate the torsion of the motion mesh defined by the PyDataSet list `datasetlist' with region field `aha' and selected regions `choosevals'. Result is list of per-node matrices of twist angles in degrees, list of average twist angles for the apex nodes, list of average twist angles for the base nodes, and the centerline axis length.
def eidolon.plugins.CardiacMotionPlugin.calculateTriAreas | ( | nodes, | |
inds, | |||
task = None |
|||
) |
def eidolon.plugins.CardiacMotionPlugin.calculateTriAreasRange | ( | process, | |
nodes, | |||
inds, | |||
result | |||
) |
def eidolon.plugins.CardiacMotionPlugin.createStrainField | ( | nodes, | |
radialfield, | |||
longfield, | |||
circumfield, | |||
h | |||
) |
Calculate a strain field by adding or subtracting the corresponding directional vectors to each node in `nodes'.
def eidolon.plugins.CardiacMotionPlugin.createStrainGrid | ( | nodes, | |
toRefSpace, | |||
toImgSpace, | |||
h | |||
) |
Calculate the 6 point strain node set for each node of `nodes'. Each node from `nodes' is first transformed by `toRefSpace' to place it in reference space, then 6 vectors are calculated by shifting the node by `h' along each axis in the positive and negative directions. All vectors are then transformed by `toImgSpace'. The result is a matrix with 7 columns, the transformed node and its 6 shifted vectors.
def eidolon.plugins.CardiacMotionPlugin.divideMeshSurfaceByRegion | ( | dataset, | |
regionfield, | |||
choosevals, | |||
task = None |
|||
) |
Define a triangle mesh surface for the topologies in `dataset' and divide them into the regions chosen in `choosevals' as drawn from the region field `regionfield'. Returns the triangle dataset, index list from `dataset', and list of matrices containing the triangle indices for each region selected in `choosevals'. Returns the triangulation dataset, index matrix list, and the list of per-region matrices in no particular order.
def eidolon.plugins.CardiacMotionPlugin.divideTrisByRegionRange | ( | process, | |
tris, | |||
nodeprops, | |||
regionfield, | |||
choosevals | |||
) |
Returns matrices containing the indices of the triangles belonging to the regions given in `choosevals' as defined by the region field `regionfield'. The matrix `tris' is the original triangle index matrix and `nodeprops' the associated node properties matrix, these are expected to have heen derived from generateLinearTriangulation() so are not from the original dataset whereas `regionfield' is. Return value is list of matrices for each chosen region in no particular order.
def eidolon.plugins.CardiacMotionPlugin.strainTensor | ( | px, | |
mx, | |||
py, | |||
my, | |||
pz, | |||
mz, | |||
hh | |||
) |
Calculate the Green-Lagrange strain tensor for a point in space given the 6 deformed strain axes for that point. The vectors are assumed to have been calculated initially at a distance of `hh' from the node.
def eidolon.plugins.CardiacMotionPlugin.tensorMul | ( | E, | |
v | |||
) |
Returns Ev.v