Field
- class simframe.frame.Field(owner, value, updater=None, differentiator=None, jacobinator=None, description='', constant=False, save=True, copy=False)[source]
Bases:
ndarray,AbstractGroupClass for storing simulation quantities.
In addition to
Group,Fieldcan have andifferentiatorfor calculating its derivative and/or anjacobinatorfor calculating its Jacobian. The function that is calculating the derivative needs the parentFrameobject as first, the integration variable of typeIntVaras second, and theFielditself as third positional argumentFieldbehaves likenumpy.ndarrayand can perform the same numerical operations.Notes
When
Field.update()is calledFieldwill be updated according return value of theupdaterof theHeartbeatobject assigned to theField. The function that is updatingFieldneeds the parentFrameobject as first positional argument.- Attributes:
TView of the transposed array.
baseBase object if memory is from some other object.
bufferTemporary buffer that stores the new value of
Fieldafter successful integration.constantIf True,
Fieldis immutable.ctypesAn object to simplify the interaction of the array with the ctypes module.
dataPython buffer object pointing to the start of the array’s data.
descriptionDescription of the instance.
- device
differentiatorHeartbeatobject with instructions for calculating the derivative ofFielddtypeData-type of the array’s elements.
flagsInformation about the memory layout of the array.
flatA 1-D iterator over the array.
imagThe imaginary part of the array.
itemsizeLength of one array element in bytes.
jacobinatorHeartbeatobject with instructions for calculating the Jacobian ofFieldmTView of the matrix transposed array.
nbytesTotal bytes consumed by the elements of the array.
ndimNumber of array dimensions.
realThe real part of the array.
saveIf False,
Fieldwill not be stored in output files.shapeTuple of array dimensions.
sizeNumber of elements in the array.
stridesTuple of bytes to step in each dimension when traversing an array.
updaterHeatbeatobject with instructions for updating the instance.
Methods
all([axis, out, keepdims, where])Returns True if all elements evaluate to True.
any([axis, out, keepdims, where])Returns True if any of the elements of a evaluate to True.
argmax([axis, out, keepdims])Return indices of the maximum values along the given axis.
argmin([axis, out, keepdims])Return indices of the minimum values along the given axis.
argpartition(kth[, axis, kind, order])Returns the indices that would partition this array.
argsort([axis, kind, order, stable])Returns the indices that would sort this array.
astype(dtype[, order, casting, subok, copy])Copy of the array, cast to a specified type.
byteswap([inplace])Swap the bytes of the array elements
choose(choices[, out, mode])Use an index array to construct a new array from a set of choices.
clip([min, max, out])Return an array whose values are limited to
[min, max].compress(condition[, axis, out])Return selected slices of this array along given axis.
conj()Complex-conjugate all elements.
conjugate()Return the complex conjugate, element-wise.
copy([order])Return a copy of the array.
cumprod([axis, dtype, out])Return the cumulative product of the elements along the given axis.
cumsum([axis, dtype, out])Return the cumulative sum of the elements along the given axis.
derivative([x, Y])If
differentiatororjacobinatoris set, this returns the derivative of theField.diagonal([offset, axis1, axis2])Return specified diagonals.
dot(other, /[, out])Refer to
numpy.dot()for full documentation.dump(file)Dump a pickle of the array to the specified file.
dumps()Returns the pickle of the array as a string.
fill(value)Fill the array with a scalar value.
flatten([order])Return a copy of the array collapsed into one dimension.
getfield(dtype[, offset])Returns a field of the given array as a certain type.
item(*args)Copy an element of an array to a standard Python scalar and return it.
jacobian([x])If
jacobinatoris set, this returns the Jacobi matrix of theField.max([axis, out, keepdims, initial, where])Return the maximum along a given axis.
mean([axis, dtype, out, keepdims, where])Returns the average of the array elements along given axis.
min([axis, out, keepdims, initial, where])Return the minimum along a given axis.
nonzero()Return the indices of the elements that are non-zero.
partition(kth[, axis, kind, order])Partially sorts the elements in the array in such a way that the value of the element in k-th position is in the position it would be in a sorted array.
prod([axis, dtype, out, keepdims, initial, ...])Return the product of the array elements over the given axis
put(indices, values[, mode])Set
a.flat[n] = values[n]for allnin indices.ravel([order])Return a flattened array.
repeat(repeats[, axis])Repeat elements of an array.
reshape(a.reshape)Returns an array containing the same data with a new shape.
resize(a.resize)Change shape and size of array in-place.
round([decimals, out])Return a with each element rounded to the given number of decimals.
searchsorted(v[, side, sorter])Find indices where elements of v should be inserted in a to maintain order.
setfield(val, dtype[, offset])Put a value into a specified place in a field defined by a data-type.
setflags([write, align, uic])Set array flags WRITEABLE, ALIGNED, WRITEBACKIFCOPY, respectively.
sort([axis, kind, order, stable])Sort an array in-place.
squeeze([axis])Remove axes of length one from a.
std([axis, dtype, out, ddof, keepdims, ...])Returns the standard deviation of the array elements along given axis.
sum([axis, dtype, out, keepdims, initial, where])Return the sum of the array elements over the given axis.
swapaxes(axis1, axis2, /)Return a view of the array with axis1 and axis2 interchanged.
take(indices[, axis, out, mode])Return an array formed from the elements of a at the given indices.
to_device(device, /, *[, stream])For Array API compatibility.
tobytes([order])Construct Python bytes containing the raw data bytes in the array.
tofile(fid, /[, sep, format])Write array to a file as text or binary (default).
tolist()Return the array as an
a.ndim-levels deep nested list of Python scalars.trace([offset, axis1, axis2, dtype, out])Return the sum along diagonals of the array.
transpose(*axes)Returns a view of the array with axes transposed.
update(*args, **kwargs)Function to update the
Field.var([axis, dtype, out, ddof, keepdims, ...])Returns the variance of the array elements, along given axis.
view([dtype][, type])New view of array with the same data.
Attributes Summary
Temporary buffer that stores the new value of
Fieldafter successful integration.If True,
Fieldis immutable.Heartbeatobject with instructions for calculating the derivative ofFieldHeartbeatobject with instructions for calculating the Jacobian ofFieldIf False,
Fieldwill not be stored in output files.Methods Summary
derivative([x, Y])If
differentiatororjacobinatoris set, this returns the derivative of theField.jacobian([x])If
jacobinatoris set, this returns the Jacobi matrix of theField.update(*args, **kwargs)Function to update the
Field.Attributes Documentation
- buffer
Temporary buffer that stores the new value of
Fieldafter successful integration.
- constant
If True,
Fieldis immutable.
- differentiator
Heartbeatobject with instructions for calculating the derivative ofField
- jacobinator
Heartbeatobject with instructions for calculating the Jacobian ofField
- save
If False,
Fieldwill not be stored in output files.
Methods Documentation
- derivative(x=None, Y=None, *args, **kwargs)[source]
If
differentiatororjacobinatoris set, this returns the derivative of theField.- Parameters:
- Returns:
deriv
- Return type:
derivative of the field according the differetiator or jacobinator
Notes
The function that calculates the derivative needs the parent
Frameas first positional, the integration variableIntVaras second positional, and theFielditself as third positional argument.The
differentiatoris not set, it will try to calculate the derivative from the Jacobian. Ifjacobinatoris also not set, it will returnFalse
- jacobian(x=None, *args, **kwargs)[source]
If
jacobinatoris set, this returns the Jacobi matrix of theField.- Parameters:
x (IntVar, optional, default : None) – Integration variable If None it uses the integration variable of the integrator of the parent Frame
- Returns:
jac (Jacobi matrix of the field according the differetiator)
The function that calculates the Jacobian needs the parent frame as first positional and the
integration variable as second positional.