- class openpnm.physics.GenericPhysics(*args, **kwargs)¶
This generic class is meant as a starter for custom Physics objects
It produces a blank object with no pore-scale models attached. Users can add models from the
modelsmodule (or create their own).
phase (OpenPNM Phase object) – The Phase object to which this Physics applies
geometry (OpenPNM Geometry object) – The Geometry object that defines the pores/throats where this Physics applies
network (OpenPNM network object) – The network to which this object is associated
settings (dataclass-like or dict, optional) – User defined settings for the object to override defaults. Can be a dataclass-type object with settings stored as attributes or a python dicionary of key-value pairs. Settings are stored in the
settingsattribute of the object.
name (string, optional) – A unique name to assign to the object for easier identification. If not given one will be generated.
A shortcut to query the total number of pores on the object
A shortcut to query the total number of throats on the object
A shortcut to get a list of all pores on the object
A shortcut to get a list of all throats on the object
List of available models on the objects
String representing the name of the object
A shortcut to get a handle to the associated network.
A shortcut to get a handle to the associated project.
Dictionary containing object settings.
add_model(propname, model[, regen_mode])
Adds a new model to the models dictionary.
filter_by_label([pores, throats, labels, mode])
Returns which of the supplied pores (or throats) has the specified label(s)
get_conduit_data(poreprop[, throatprop, mode])
Combines requested data into a single 3-column array.
Retrieves requested property from associated objects, to produce a full Np or Nt length array.
Determines a pore (or throat) property as the average of it's neighboring throats (or pores)
labels([pores, throats, element, mode])
Returns a list of labels present on the object
Returns the number of pores of the specified labels
Return the number of throats of the specified labels
Return parameter names and values in a dictionary
pores([labels, mode, asmask, to_global])
Returns pore indicies where given labels exist, according to the logic specified by the
props([element, mode, deep])
Returns a list containing the names of all defined pore or throat properties.
regenerate_models([propnames, exclude, deep])
Re-runs the specified model or models.
Removes model and data from object.
Sets the association between this physics and a geometry
set_label(label[, pores, throats, mode])
Creates or updates a label array
set_locations([pores, throats, mode])
Assign a Subdomain object to specific pores and/or throats
Sets the association between this physics and a phase.
show_hist([props, bins, fontsize])
Shows a quick plot of key property distributions.
throats([labels, mode, asmask, to_global])
Returns throat locations where given labels exist, according to the logic specified by the
Convert local indices from a subdomain object to global values
Converts a boolean mask to a list of pore or throat indices.
to_local([pores, throats, missing_vals])
Convert global indices to local values relative to a subdomain object
Convert a list of pore or throat indices into a boolean mask of the correct length.