Module “quantity_factory”¶
- class tc_python.quantity_factory.DiffusionQuantity¶
Bases:
AbstractQuantity
Factory class providing quantities used for defining diffusion simulations and their results.
Note
In this factory class only the most common quantities are defined, you can always use the Console Mode syntax strings in the respective methods as an alternative (for example: “NPM(*)”).
- classmethod activity_of_component(component: str, use_ser: bool = False) ActivityOfComponent ¶
Creates a quantity representing the activity of a component.
- Parameters
component – The name of the component, use ALL_COMPONENTS to choose all components
use_ser – Use Stable-Element-Reference(SER). The user-defined reference state is be used if this setting is set to False.
- Returns
A new
ActivityOfComponent
object.
- classmethod chemical_diffusion_coefficient(phase: str, diffusing_element: str, gradient_element: str, reference_element: str) ChemicalDiffusionCoefficient ¶
Creates a quantity representing the chemical diffusion coefficient of a phase [m^2/s].
- Parameters
phase – The name of the phase
diffusing_element – The diffusing element
gradient_element – The gradient element
reference_element – The reference element (for example “Fe” in a steel)
- Returns
A new
ChemicalDiffusionCoefficient
object.
- classmethod chemical_potential_of_component(component: str, use_ser: bool = False) ChemicalPotentialOfComponent ¶
Creates a quantity representing the chemical potential of a component [J].
- Parameters
component – The name of the component, use ALL_COMPONENTS to choose all components
use_ser – Use Stable-Element-Reference(SER). The user-defined reference state is used if this setting is set to False.
- Returns
A new
ChemicalPotentialOfComponent
object.
- classmethod distance(region: str = 'All') Distance ¶
Creates a quantity representing the distance [m].
- Parameters
region – The name of the region or All to choose global.
- classmethod intrinsic_diffusion_coefficient(phase: str, diffusing_element: str, gradient_element: str, reference_element: str) IntrinsicDiffusionCoefficient ¶
Creates a quantity representing the intrinsic diffusion coefficient of a phase [m^2/s].
- Parameters
phase – The name of the phase
diffusing_element – The diffusing element
gradient_element – The gradient element
reference_element – The reference element (for example “Fe” in a steel)
- Returns
A new
IntrinsicDiffusionCoefficient
object.
- classmethod l_bis(phase: str, diffusing_element: str, gradient_element: str, reference_element: str) Lbis ¶
Creates a quantity representing L’’ of a phase [m^2/s].
- Parameters
phase – The name of the phase
diffusing_element – The diffusing element
gradient_element – The gradient element
reference_element – The reference element (for example “Fe” in a steel)
- Returns
A new
Lbis
object.
- classmethod mass_fraction_of_a_component(component: str) MassFractionOfAComponent ¶
Creates a quantity representing the mass fraction of a component.
- Parameters
component – The name of the component or ALL_COMPONENTS to choose all components
- Returns
A new
MassFractionOfAComponent
object.
- classmethod mass_fraction_of_a_phase(phase: str) MassFractionOfAPhase ¶
Creates a quantity representing the mass fraction of a phase.
- Parameters
phase – The name of the phase or ALL_PHASES to choose all phases.
- Returns
A new
MassFractionOfAPhase
object.
- classmethod mobility_of_component_in_phase(phase: str, component: str) MobilityOfComponentInPhase ¶
Creates a quantity representing the mobility of a component in a phase [m^2/Js].
- Parameters
phase – The name of the phase
component – The name of the component
- Returns
A new
MobilityOfComponentInPhase
object.
- classmethod mole_fraction_of_a_component(component: str) MoleFractionOfAComponent ¶
Creates a quantity representing the mole fraction of a component.
- Parameters
component – The name of the component or ALL_COMPONENTS to choose all components
- Returns
A new
MoleFractionOfAComponent
object.
- classmethod mole_fraction_of_a_phase(phase: str) MoleFractionOfAPhase ¶
Creates a quantity representing the mole fraction of a phase.
- Parameters
phase – The name of the phase or ALL_PHASES to choose all phases
- Returns
A new
MoleFractionOfAPhase
object.
- classmethod position_of_lower_boundary_of_region(region: str) PositionOfLowerBoundaryOfRegion ¶
Creates a quantity representing the position of lower boundary of a region [m].
- Parameters
region – The name of the region
- Returns
A new
PositionOfLowerBoundaryOfRegion
object.
- classmethod position_of_upper_boundary_of_region(region: str) PositionOfUpperBoundaryOfRegion ¶
Creates a quantity representing the position of upper boundary of a region [m].
- Parameters
region – The name of the region
- Returns
A new
PositionOfUpperBoundaryOfRegion
object.
- classmethod temperature() Temperature ¶
Creates a quantity representing the temperature [K].
- Returns
A new
Temperature
object.
- classmethod thermodynamic_factor(phase: str, diffusing_element: str, gradient_element: str, reference_element: str) ThermoDynamicFactor ¶
Creates a quantity representing thermodynamic factor of a phase.
- Parameters
phase – The name of the phase
diffusing_element – The diffusing element
gradient_element – The gradient element
reference_element – The reference element (for example “Fe” in a steel)
- Returns
A new
ThermoDynamicFactor
object.
- classmethod time() Time ¶
Creates a quantity representing the time [s].
- classmethod total_mass_fraction_of_component(component: str) TotalMassFractionOfComponent ¶
Creates a quantity representing the total mass fraction of a component.
- Parameters
component – The name of the component
- Returns
A new
TotalMassFractionOfComponent
object.
- classmethod total_mass_fraction_of_component_in_phase(phase: str, component: str) TotalMassFractionOfComponentInPhase ¶
Creates a quantity representing the total mass fraction of a component in a phase.
- Parameters
phase – The name of the phase
component – The name of the component
- Returns
A new
TotalMassFractionOfComponentInPhase
object.
- classmethod total_mass_fraction_of_phase(phase: str) TotalMassFractionOfPhase ¶
Creates a quantity representing the total mass fraction of a phase.
- Parameters
phase – The name of the phase.
- Returns
A new
TotalMassFractionOfPhase
object.
- classmethod total_mole_fraction_of_component(component: str) TotalMoleFractionOfComponent ¶
Creates a quantity representing the total mole fraction of a component.
- Parameters
component – The name of the component
- Returns
A new
TotalMoleFractionOfComponent
object.
- classmethod total_mole_fraction_of_component_in_phase(phase: str, component: str) TotalMoleFractionOfComponentInPhase ¶
Creates a quantity representing the total mole fraction of a component in a phase.
- Parameters
phase – The name of the phase
component – The name of the component
- Returns
A new
TotalMoleFractionOfComponentInPhase
object.
- classmethod total_volume_fraction_of_phase(phase: str) TotalVolumeFractionOfPhase ¶
Creates a quantity representing the total volume fraction of a phase.
- Parameters
phase – The name of the phase.
- Returns
A new
TotalVolumeFractionOfPhase
object.
- classmethod tracer_diffusion_coefficient(phase: str, diffusing_element: str) TracerDiffusionCoefficient ¶
Creates a quantity representing tracer diffusion coefficient of a phase [m^2/s].
- Parameters
phase – The name of the phase
diffusing_element – The diffusing element
- Returns
A new
TracerDiffusionCoefficient
object.
- classmethod u_fraction_of_a_component(component: str) UFractionOfAComponent ¶
Creates a quantity representing the u-fraction of a component.
- Parameters
component – The name of the component
- Returns
A new
UFractionOfAComponent
object.
- classmethod user_defined_function(expression: str) Function ¶
Creates a quantity representing a user-defined function.
- Parameters
expression – The function expression
- Returns
A new
Function
object
- classmethod velocity_of_lower_boundary_of_region(region: str) VelocityOfLowerBoundaryOfRegion ¶
Creates a quantity representing the velocity of lower boundary of a region [m/s].
- Parameters
region – The name of the region
- Returns
A new
VelocityOfLowerBoundaryOfRegion
object.
- classmethod velocity_of_upper_boundary_of_region(region: str) VelocityOfUpperBoundaryOfRegion ¶
Creates a quantity representing the velocity of upper boundary of a region [m/s].
- Parameters
region – The name of the region
- Returns
A new
VelocityOfUpperBoundaryOfRegion
object.
- classmethod width_of_region(region: str) Function ¶
Creates a quantity representing the width of a region [m].
- Parameters
region – The name of the region
- Returns
A new
WidthOfRegion
object.
- class tc_python.quantity_factory.IndependentVariable¶
Bases:
AbstractQuantity
Factory class providing quantities used for defining the independent variable in general diffusion result querying.
- classmethod distance(region: str = 'All') Distance ¶
Creates an independent variable representing the distance [m].
- Returns
A new Distance object
- classmethod time() Time ¶
Creates an independent variable representing the time [s].
- Returns
A new Time object
- class tc_python.quantity_factory.PlotCondition¶
Bases:
AbstractQuantity
Factory class providing quantities used for defining the plot condition in general diffusion result querying.
Note
In this factory class only the most common quantities are defined, you can always use the Console Mode syntax strings in the respective methods as an alternative (for example: “time last”).
- classmethod distance(distancepoint: float, region: str = 'All') DistanceCondition ¶
Creates a plot condition representing the distance [m].
Change in version 2019b: Mandatory parameter distancepoint added
- Parameters
distancepoint – The distance from the lower interface of the region
region – The name of the region or All to choose global.
- Returns
A new DistanceCondition object
- classmethod integral() IntegralCondition ¶
Creates an integral plot condition.
- Returns
A new IntegralCondition object
- classmethod interface(region: str, interface_position: InterfacePosition) InterfaceCondition ¶
Creates a plot condition representing an interface between two regions.
- Parameters
region – The name of the region used for defining the interface
interface_position – The position of the interface relative to that region (lower or upper)
- Returns
A new InterfaceCondition object
- classmethod time(timepoint: Union[float, str] = 'Last') TimeCondition ¶
Creates a plot condition representing the time [s].
Change in version 2019b: Lists of timepoints are no longer supported
- Parameters
timepoint – The timepoint. Optionally “Last” can be used for the end of the simulation
- Returns
A new TimeCondition object
- class tc_python.quantity_factory.ScheilQuantity¶
Bases:
AbstractQuantity
Factory class providing quantities used for defining a Scheil calculation result (
tc_python.scheil.ScheilCalculationResult
).- classmethod apparent_heat_capacity_per_gram() ApparentHeatCapacityPerGram ¶
Creates a quantity representing the apparent heat capacity [J/g/K].
- Returns
A new
ApparentHeatCapacityPerGram
object.
- classmethod apparent_heat_capacity_per_mole() ApparentHeatCapacityPerMole ¶
Creates a quantity representing the apparent heat capacity [J/mol/K].
- Returns
A new
ApparentHeatCapacityPerMole
object.
- classmethod apparent_volumetric_thermal_expansion_coefficient() ApparentVolumetricThermalExpansionCoefficient ¶
Creates a quantity representing the apparent volumetric thermal expansion coefficient of the system [1/K].
- Returns
A new
ApparentVolumetricThermalExpansionCoefficient
object.
- classmethod composition_of_phase_as_mole_fraction(phase: str, component: str) CompositionOfPhaseAsMoleFraction ¶
Creates a quantity representing the composition of a phase [mole-fraction].
- Parameters
phase – The name of the phase, use ALL_PHASES to choose all stable phases
component – The name of the component, use ALL_COMPONENTS to choose all components
- Returns
A new
CompositionOfPhaseAsMoleFraction
object.
- classmethod composition_of_phase_as_weight_fraction(phase: str, component: str) CompositionOfPhaseAsWeightFraction ¶
Creates a quantity representing the composition of a phase [weight-fraction].
- Parameters
phase – The name of the phase, use ALL_PHASES to choose all stable phases
component – The name of the component, use ALL_COMPONENTS to choose all components
- Returns
A new
CompositionOfPhaseAsWeightFraction
object.
- classmethod density_of_phase(phase: str) DensityOfPhase ¶
Creates a quantity representing the average density of a phase [g/cm^3].
- Parameters
phase – The name of the phase or ALL_PHASES to choose all phases
- Returns
A new
DensityOfPhase
object.
- classmethod density_of_system() DensityOfSystem ¶
Creates a quantity representing the average density of the system [g/cm^3].
- Returns
A new
DensityOfSystem
object.
- classmethod distribution_of_component_of_phase(phase: str, component: str) DistributionOfComponentOfPhase ¶
Creates a quantity representing the (molar) fraction of the specified component being present in the specified phase compared to the overall system [-]. This corresponds to the degree of segregation to that phase.
- Parameters
phase – The name of the phase
component – The name of the component
- Returns
A new
DistributionOfComponentOfPhase
object.
- classmethod heat_per_gram() HeatPerGram ¶
Creates a quantity representing the total heat release from the liquidus temperature down to the current temperature [J/g].
Note
The total or apparent heat release during the solidification process consists of two parts: one is the so-called latent heat, i.e. heat due to the liquid -> solid phase transformation (
latent_heat_per_mole()
andlatent_heat_per_gram()
), and the other is the heat related to the specific heat of liquid and solid phases (heat_per_mole()
andheat_per_gram()
).- Returns
A new
HeatPerGram
object.
- classmethod heat_per_mole() HeatPerMole ¶
Creates a quantity representing the total heat release from the liquidus temperature down to the current temperature [J/mol].
Note
The total or apparent heat release during the solidification process consists of two parts: one is the so-called latent heat, i.e. heat due to the liquid -> solid phase transformation (
latent_heat_per_mole()
andlatent_heat_per_gram()
), and the other is the heat related to the specific heat of liquid and solid phases (heat_per_mole()
andheat_per_gram()
).- Returns
A new
HeatPerMole
object.
- classmethod latent_heat_per_gram() LatentHeatPerGram ¶
Creates a quantity representing the cumulated latent heat release from the liquidus temperature down to the current temperature [J/g].
Note
The total or apparent heat release during the solidification process consists of two parts: one is the so-called latent heat, i.e. heat due to the liquid -> solid phase transformation (
latent_heat_per_mole()
andlatent_heat_per_gram()
), and the other is the heat related to the specific heat of liquid and solid phases (heat_per_mole()
andheat_per_gram()
).- Returns
A new
LatentHeatPerGram
object.
- classmethod latent_heat_per_mole() LatentHeatPerMole ¶
Creates a quantity representing the cumulated latent heat release from the liquidus temperature down to the current temperature [J/mol].
Note
The total or apparent heat release during the solidification process consists of two parts: one is the so-called latent heat, i.e. heat due to the liquid -> solid phase transformation (
latent_heat_per_mole()
andlatent_heat_per_gram()
), and the other is the heat related to the specific heat of liquid and solid phases (heat_per_mole()
andheat_per_gram()
).- Returns
A new
LatentHeatPerMole
object.
- classmethod mass_fraction_of_a_solid_phase(phase: str) MassFractionOfASolidPhase ¶
Creates a quantity representing the mass fraction of a solid phase.
- Parameters
phase – The name of the phase or ALL_PHASES to choose all solid phases
- Returns
A new
MassFractionOfASolidPhase
object.
- classmethod mass_fraction_of_all_liquid() MassFractionOfAllLiquid ¶
Creates a quantity representing the total mass fraction of all the liquid phase.
- Returns
A new
MassFractionOfAllLiquid
object.
- classmethod mass_fraction_of_all_solid_phases() MassFractionOfAllSolidPhase ¶
Creates a quantity representing the total mass fraction of all solid phases.
- Returns
A new
MassFractionOfAllSolidPhase
object.
- classmethod molar_volume_of_phase(phase: str) MolarVolumeOfPhase ¶
Creates a quantity representing the molar volume of a phase [m^3/mol].
- Parameters
phase – The name of the phase or ALL_PHASES to choose all phases
- Returns
A new
MolarVolumeOfPhase
object.
- classmethod molar_volume_of_system() MolarVolumeOfSystem ¶
Creates a quantity representing the molar volume of the system [m^3/mol].
- Returns
A new
MolarVolumeOfSystem
object.
- classmethod mole_fraction_of_a_solid_phase(phase: str) MoleFractionOfASolidPhase ¶
Creates a quantity representing the molar fraction of a solid phase.
- Parameters
phase – The name of the phase or ALL_PHASES to choose all solid phases
- Returns
A new
MoleFractionOfASolidPhase
object.
- classmethod mole_fraction_of_all_liquid() MoleFractionOfAllLiquid ¶
Creates a quantity representing the total molar fraction of all the liquid phase.
- Returns
A new
MoleFractionOfAllLiquid
object.
- classmethod mole_fraction_of_all_solid_phases() MoleFractionOfAllSolidPhases ¶
Creates a quantity representing the total molar fraction of all solid phases.
- Returns
A new
MoleFractionOfAllSolidPhases
object.
- classmethod site_fraction_of_component_in_phase(phase: str, component: str, sub_lattice_ordinal_no: int = 0) SiteFractionOfComponentInPhase ¶
Creates a quantity representing the site fractions [-].
- Parameters
phase – The name of the phase, use ALL_PHASES to choose all stable phases
component – The name of the component, use ALL_COMPONENTS to choose all components
sub_lattice_ordinal_no – The ordinal number (i.e. 1, 2, …) of the sublattice of interest, use None to choose all sublattices
Note
Detailed information about the sublattices can be obtained by getting the Phase object of a phase from the System object using
tc_python.system.System.get_phase_in_system
. For each phase the sublattices are obtained by usingtc_python.system.Phase.get_sublattices
. The order in the returned list is equivalent to the sublattice ordinal number expected, but note that the ordinal numbers start with 1.- Returns
A new
SiteFractionOfComponentInPhase
object.
- classmethod temperature() Temperature ¶
Creates a quantity representing the temperature [K].
- Returns
A new
Temperature
object.
- class tc_python.quantity_factory.ThermodynamicQuantity¶
Bases:
AbstractQuantity
Factory class providing quantities used for defining equilibrium calculations (single equilibrium, property and phase diagrams, …) and their results.
Note
In this factory class only the most common quantities are defined, you can always use the Console Mode syntax strings in the respective methods as an alternative (for example: “NPM(*)”).
- classmethod activity_of_component(component: str, use_ser: bool = False) ActivityOfComponent ¶
Creates a quantity representing the activity of a component [-].
- Parameters
component – The name of the component, use ALL_COMPONENTS to choose all components
use_ser – Use Stable-Element-Reference(SER). The user-defined reference state is used if this setting is set to False.
- Returns
A new
ActivityOfComponent
object.
- classmethod chemical_diffusion_coefficient(phase: str, diffusing_element: str, gradient_element: str, reference_element: str) ChemicalDiffusionCoefficient ¶
Creates a quantity representing the chemical diffusion coefficient of a phase [m^2/s].
- Parameters
phase – The name of the phase
diffusing_element – The diffusing element
gradient_element – The gradient element
reference_element – The reference element (for example “Fe” in a steel)
- Returns
A new
ChemicalDiffusionCoefficient
object.
- classmethod chemical_potential_of_component(component: str, use_ser: bool = False) ChemicalPotentialOfComponent ¶
Creates a quantity representing the chemical potential of a component [J].
- Parameters
component – The name of the component, use ALL_COMPONENTS to choose all components
use_ser – Use Stable-Element-Reference(SER). The user-defined reference state is used if this setting is set to False.
- Returns
A new
ChemicalPotentialOfComponent
object.
- classmethod composition_of_phase_as_mole_fraction(phase: str, component: str = 'All') CompositionOfPhaseAsMoleFraction ¶
Creates a quantity representing the composition of a phase [mole-fraction].
- Parameters
phase – The name of the phase, use ALL_PHASES to choose all stable phases
component – The name of the component, use ALL_COMPONENTS to choose all components
- Returns
A new
CompositionOfPhaseAsMoleFraction
object.
- classmethod composition_of_phase_as_weight_fraction(phase: str, component: str) CompositionOfPhaseAsWeightFraction ¶
Creates a quantity representing the composition of a phase [weight-fraction].
- Parameters
phase – The name of the phase, use ALL_PHASES to choose all stable phases
component – The name of the component, use ALL_COMPONENTS to choose all components
- Returns
A new
CompositionOfPhaseAsWeightFraction
object.
- classmethod gibbs_energy_of_a_phase(phase: str, use_ser: bool = False) GibbsEnergyOfAPhase ¶
Creates a quantity representing the Gibbs energy of a phase [J].
- Parameters
phase – The name of the phase or ALL_PHASES to choose all phases
use_ser – Use Stable-Element-Reference(SER). The user-defined reference state will be used when this setting is set to False.
- Returns
A new
GibbsEnergyOfAPhase
object.
- classmethod mass_fraction_of_a_component(component: str) MassFractionOfAComponent ¶
Creates a quantity representing the mass fraction of a component.
- Parameters
component – The name of the component or ALL_COMPONENTS to choose all components
- Returns
A new
MassFractionOfAComponent
object.
- classmethod mass_fraction_of_a_phase(phase: str) MassFractionOfAPhase ¶
Creates a quantity representing the mass fraction of a phase.
- Parameters
phase – The name of the phase or ALL_PHASES to choose all phases.
- Returns
A new
MassFractionOfAPhase
object.
- classmethod mole_fraction_of_a_component(component: str) MoleFractionOfAComponent ¶
Creates a quantity representing the mole fraction of a component.
- Parameters
component – The name of the component or ALL_COMPONENTS to choose all components
- Returns
A new
MoleFractionOfAComponent
object.
- classmethod mole_fraction_of_a_phase(phase: str) MoleFractionOfAPhase ¶
Creates a quantity representing the mole fraction of a phase.
- Parameters
phase – The name of the phase or ALL_PHASES to choose all phases
- Returns
A new
MoleFractionOfAPhase
object.
- classmethod normalized_driving_force_of_a_phase(phase: str) NormalizedDrivingForceOfAPhase ¶
Creates a quantity representing normalized driving force of a phase [-].
Warning
A driving force calculation requires that the respective phase has been set to the state DORMANT. The parameter All is only reasonable if all phases have been set to that state.
- Parameters
phase – The name of the phase or ALL_PHASES to choose all phases
- Returns
A new
DrivingForceOfAPhase
object.
- classmethod pressure() Pressure ¶
Creates a quantity representing the pressure [Pa].
- Returns
A new
Pressure
object.
- classmethod system_size() SystemSize ¶
Creates a quantity representing the system size [mol].
- Returns
A new
SystemSize
object.
- classmethod temperature() Temperature ¶
Creates a quantity representing the temperature [K].
- Returns
A new
Temperature
object.
- classmethod tracer_diffusion_coefficient(phase: str, diffusing_element: str) TracerDiffusionCoefficient ¶
Creates a quantity representing tracer diffusion coefficient of a phase [m^2/s].
- Parameters
phase – The name of the phase
diffusing_element – The diffusing element
- Returns
A new
TracerDiffusionCoefficient
object.
- classmethod u_fraction_of_a_component(component: str) UFractionOfAComponent ¶
Creates a quantity representing the u-fraction of a component.
- Parameters
component – The name of the component
- Returns
A new
UFractionOfAComponent
object.
- classmethod user_defined_function(expression: str) Function ¶
Creates a quantity representing a user-defined function.
- Parameters
expression – The function expression
- Returns
A new
Function
object
- classmethod volume_fraction_of_a_phase(phase: str) VolumeFractionOfAPhase ¶
Creates a quantity representing the volume fraction of a phase.
- Parameters
phase – The name of the phase or ALL_PHASES to choose all phases
- Returns
A new
VolumeFractionOfAPhase
object.