esys.modellib.materials Package¶
Classes¶
GravityForceMaterialTableModelParameterSetSimpleEarthModelSimpleFluidMaterialSimpleSolidMaterial
-
class
esys.modellib.materials.GravityForce(**kwargs)¶ Bases:
esys.escriptcore.modelframe.ParameterSetSets a gravity force of given direction in given domain:
Note: Instance variable domain - domain of interest (in). Note: Instance variable domain - esys.escript.DomainNote: Instance variable density - density, default 1 (in). Note: Instance variable gravity - the gravity constant, default 9.81 (in). Note: Instance variable direction - the direction of gravity, default [1.,0.,0.] (in). -
__init__(**kwargs)¶ initializes the set
-
checkLinkTargets(models, hash)¶ Returns a set of tuples (“<self>(<name>)”, <target model>) if the parameter <name> is linked to model <target model> but <target model> is not in the list of models. If a parameter is linked to another parameter set which is not in the hash list the parameter set is checked for its models. hash gives the call history.
-
declareParameter(**parameters)¶ Declares one or more new parameters and their initial value.
-
declareParameters(parameters)¶ Declares a set of parameters. parameters can be a list, a dictionary or a ParameterSet.
-
classmethod
fromDom(esysxml, node)¶
-
getAttributeObject(name)¶ Returns the object stored for attribute
name.
-
gravity_force()¶ return the gravity force as
density*gravity*direction
-
hasAttribute(name)¶ Returns True if self has attribute
name.
-
releaseParameters(name)¶ Removes parameter name from the parameters.
-
showParameters()¶ Returns a description of the parameters.
-
toDom(esysxml, node)¶ toDommethod of Model class.
-
trace(msg)¶ If debugging is on, prints the message, otherwise does nothing.
-
writeXML(ostream=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>)¶ Writes the object as an XML object into an output stream.
-
-
class
esys.modellib.materials.MaterialTable(**kwargs)¶ Bases:
esys.escriptcore.modelframe.ParameterSetA simple matrial table which allows setting physical ivar of a model
Variables: -
__init__(**kwargs)¶ Creates a ParameterSet with given parameters.
-
checkLinkTargets(models, hash)¶ Returns a set of tuples (“<self>(<name>)”, <target model>) if the parameter <name> is linked to model <target model> but <target model> is not in the list of models. If a parameter is linked to another parameter set which is not in the hash list the parameter set is checked for its models. hash gives the call history.
-
declareParameter(**parameters)¶ Declares one or more new parameters and their initial value.
-
declareParameters(parameters)¶ Declares a set of parameters. parameters can be a list, a dictionary or a ParameterSet.
-
classmethod
fromDom(esysxml, node)¶
-
getAttributeObject(name)¶ Returns the object stored for attribute
name.
-
hasAttribute(name)¶ Returns True if self has attribute
name.
-
releaseParameters(name)¶ Removes parameter name from the parameters.
-
showParameters()¶ Returns a description of the parameters.
-
toDom(esysxml, node)¶ toDommethod of Model class.
-
trace(msg)¶ If debugging is on, prints the message, otherwise does nothing.
-
writeXML(ostream=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>)¶ Writes the object as an XML object into an output stream.
-
-
class
esys.modellib.materials.Model(parameters=[], **kwargs)¶ Bases:
esys.escriptcore.modelframe.ParameterSetA Model object represents a process marching over time until a finalizing condition is fulfilled. At each time step an iterative process can be performed and the time step size can be controlled. A Model has the following work flow:
doInitialization() while not terminateInitialIteration(): doInitialStep() doInitialPostprocessing() while not finalize(): dt=getSafeTimeStepSize(dt) doStepPreprocessing(dt) while not terminateIteration(): doStep(dt) doStepPostprocessing(dt) doFinalization()
where
doInitialization,finalize,getSafeTimeStepSize,doStepPreprocessing,terminateIteration,doStepPostprocessing,doFinalizationare methods of the particular instance of a Model. The default implementations of these methods have to be overwritten by the subclass implementing a Model.-
__init__(parameters=[], **kwargs)¶ Creates a model.
Just calls the parent constructor.
-
UNDEF_DT= 1e+300¶
-
checkLinkTargets(models, hash)¶ Returns a set of tuples (“<self>(<name>)”, <target model>) if the parameter <name> is linked to model <target model> but <target model> is not in the list of models. If a parameter is linked to another parameter set which is not in the hash list the parameter set is checked for its models. hash gives the call history.
-
declareParameter(**parameters)¶ Declares one or more new parameters and their initial value.
-
declareParameters(parameters)¶ Declares a set of parameters. parameters can be a list, a dictionary or a ParameterSet.
-
doFinalization()¶ Finalizes the time stepping.
This function may be overwritten.
-
doInitialPostprocessing()¶ Finalises the initialization iteration process. This method is not called in case of a restart.
This function may be overwritten.
-
doInitialStep()¶ Performs an iteration step in the initialization phase. This method is not called in case of a restart.
This function may be overwritten.
-
doInitialization()¶ Initializes the time stepping scheme. This method is not called in case of a restart.
This function may be overwritten.
-
doStep(dt)¶ Executes an iteration step at a time step.
dtis the currently used time step size.This function may be overwritten.
-
doStepPostprocessing(dt)¶ Finalises the time step.
dt is the currently used time step size.
This function may be overwritten.
-
doStepPreprocessing(dt)¶ Sets up a time step of step size dt.
This function may be overwritten.
-
finalize()¶ Returns False if the time stepping is finalized.
This function may be overwritten.
-
classmethod
fromDom(esysxml, node)¶
-
getAttributeObject(name)¶ Returns the object stored for attribute
name.
-
getSafeTimeStepSize(dt)¶ Returns a time step size which can be safely used.
dtgives the previously used step size.This function may be overwritten.
-
hasAttribute(name)¶ Returns True if self has attribute
name.
-
releaseParameters(name)¶ Removes parameter name from the parameters.
-
setUp()¶ Sets up the model.
This function may be overwritten.
-
showParameters()¶ Returns a description of the parameters.
-
terminateInitialIteration()¶ Returns True if iteration at the inital phase is terminated.
-
terminateIteration()¶ Returns True if iteration on a time step is terminated.
-
toDom(esysxml, node)¶ toDommethod of Model class.
-
trace(msg)¶ If debugging is on, prints the message, otherwise does nothing.
-
writeXML(ostream=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>)¶ Writes the object as an XML object into an output stream.
-
-
class
esys.modellib.materials.ParameterSet(parameters=[], **kwargs)¶ Bases:
esys.escriptcore.modelframe.LinkableObjectA class which allows to emphasize attributes to be written and read to XML.
Leaves of an ESySParameters object can be:
- a real number
- an integer number
- a string
- a boolean value
- a ParameterSet object
- a Simulation object
- a Model object
- a numpy object
- a list of booleans
- any other object (not considered by writeESySXML and writeXML)
Example for how to create an ESySParameters object:
p11=ParameterSet(gamma1=1.,gamma2=2.,gamma3=3.) p1=ParameterSet(dim=2,tol_v=0.001,output_file="/tmp/u.%3.3d.dx",runFlag=True,parm11=p11) parm=ParameterSet(parm1=p1,parm2=ParameterSet(alpha=Link(p11,"gamma1")))
This can be accessed as:
parm.parm1.gamma=0. parm.parm1.dim=2 parm.parm1.tol_v=0.001 parm.parm1.output_file="/tmp/u.%3.3d.dx" parm.parm1.runFlag=True parm.parm1.parm11.gamma1=1. parm.parm1.parm11.gamma2=2. parm.parm1.parm11.gamma3=3. parm.parm2.alpha=1. (value of parm.parm1.parm11.gamma1)
-
__init__(parameters=[], **kwargs)¶ Creates a ParameterSet with given parameters.
-
checkLinkTargets(models, hash)¶ Returns a set of tuples (“<self>(<name>)”, <target model>) if the parameter <name> is linked to model <target model> but <target model> is not in the list of models. If a parameter is linked to another parameter set which is not in the hash list the parameter set is checked for its models. hash gives the call history.
-
declareParameter(**parameters)¶ Declares one or more new parameters and their initial value.
-
declareParameters(parameters)¶ Declares a set of parameters. parameters can be a list, a dictionary or a ParameterSet.
-
classmethod
fromDom(esysxml, node)¶
-
getAttributeObject(name)¶ Returns the object stored for attribute
name.
-
hasAttribute(name)¶ Returns True if self has attribute
name.
-
releaseParameters(name)¶ Removes parameter name from the parameters.
-
showParameters()¶ Returns a description of the parameters.
-
toDom(esysxml, node)¶ toDommethod of Model class.
-
trace(msg)¶ If debugging is on, prints the message, otherwise does nothing.
-
writeXML(ostream=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>)¶ Writes the object as an XML object into an output stream.
-
class
esys.modellib.materials.SimpleEarthModel(**kwargs)¶ Bases:
esys.escriptcore.modelframe.ParameterSetA simple matrial table run convection models:
density=density0*(1-expansion_coefficient*(temperature-reference_temperature)) viscocity=viscocity0*(exp(alpha*(1/reference_temperature - 1/temperature))
Variables: - gravity – gravity constants (9.81) (in)
- reference_temperature – reference temperature (in)
- density0 – density at reference temperature (in)
- viscosity0 – viscosity0 at reference temperature (in)
- alpha – viscosity contrast (in)
- expansion_coefficient – Raleigh number (in)
- heat_capacity – heat capacity (in)
- thermal_permabilty – permabilty (in)
- temperature – temperature (in)
- viscosity – viscosity (out)
- density – density (out)
-
__init__(**kwargs)¶ Creates a ParameterSet with given parameters.
-
checkLinkTargets(models, hash)¶ Returns a set of tuples (“<self>(<name>)”, <target model>) if the parameter <name> is linked to model <target model> but <target model> is not in the list of models. If a parameter is linked to another parameter set which is not in the hash list the parameter set is checked for its models. hash gives the call history.
-
declareParameter(**parameters)¶ Declares one or more new parameters and their initial value.
-
declareParameters(parameters)¶ Declares a set of parameters. parameters can be a list, a dictionary or a ParameterSet.
-
density()¶
-
classmethod
fromDom(esysxml, node)¶
-
getAttributeObject(name)¶ Returns the object stored for attribute
name.
-
hasAttribute(name)¶ Returns True if self has attribute
name.
-
releaseParameters(name)¶ Removes parameter name from the parameters.
-
showParameters()¶ Returns a description of the parameters.
-
toDom(esysxml, node)¶ toDommethod of Model class.
-
trace(msg)¶ If debugging is on, prints the message, otherwise does nothing.
-
viscosity()¶
-
writeXML(ostream=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>)¶ Writes the object as an XML object into an output stream.
-
class
esys.modellib.materials.SimpleFluidMaterial(**kwargs)¶ Bases:
esys.modellib.materials.MaterialTableA simple matrial table which allows setting physical ivar of a model.
-
__init__(**kwargs)¶ Creates a ParameterSet with given parameters.
-
checkLinkTargets(models, hash)¶ Returns a set of tuples (“<self>(<name>)”, <target model>) if the parameter <name> is linked to model <target model> but <target model> is not in the list of models. If a parameter is linked to another parameter set which is not in the hash list the parameter set is checked for its models. hash gives the call history.
-
declareParameter(**parameters)¶ Declares one or more new parameters and their initial value.
-
declareParameters(parameters)¶ Declares a set of parameters. parameters can be a list, a dictionary or a ParameterSet.
-
classmethod
fromDom(esysxml, node)¶
-
getAttributeObject(name)¶ Returns the object stored for attribute
name.
-
hasAttribute(name)¶ Returns True if self has attribute
name.
-
releaseParameters(name)¶ Removes parameter name from the parameters.
-
showParameters()¶ Returns a description of the parameters.
-
toDom(esysxml, node)¶ toDommethod of Model class.
-
trace(msg)¶ If debugging is on, prints the message, otherwise does nothing.
-
writeXML(ostream=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>)¶ Writes the object as an XML object into an output stream.
-
-
class
esys.modellib.materials.SimpleSolidMaterial(**kwargs)¶ Bases:
esys.modellib.materials.MaterialTableA simple matrial table which allows setting physical parameters of a model.
-
__init__(**kwargs)¶ Creates a ParameterSet with given parameters.
-
checkLinkTargets(models, hash)¶ Returns a set of tuples (“<self>(<name>)”, <target model>) if the parameter <name> is linked to model <target model> but <target model> is not in the list of models. If a parameter is linked to another parameter set which is not in the hash list the parameter set is checked for its models. hash gives the call history.
-
declareParameter(**parameters)¶ Declares one or more new parameters and their initial value.
-
declareParameters(parameters)¶ Declares a set of parameters. parameters can be a list, a dictionary or a ParameterSet.
-
classmethod
fromDom(esysxml, node)¶
-
getAttributeObject(name)¶ Returns the object stored for attribute
name.
-
hasAttribute(name)¶ Returns True if self has attribute
name.
-
releaseParameters(name)¶ Removes parameter name from the parameters.
-
showParameters()¶ Returns a description of the parameters.
-
toDom(esysxml, node)¶ toDommethod of Model class.
-
trace(msg)¶ If debugging is on, prints the message, otherwise does nothing.
-
writeXML(ostream=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>)¶ Writes the object as an XML object into an output stream.
-
Functions¶
-
esys.modellib.materials.exp(arg)¶ Returns e to the power of argument
arg.Parameters: arg ( float,escript.Data,Symbol,numpy.ndarray.) – argumentReturn type: float,escript.Data,Symbol,numpy.ndarraydepending on the type of argRaises: TypeError – if the type of the argument is not expected