CapeThermoMaterialWrapperGetPDependentProperty Method

Returns the values of pressure-dependent Physical Properties for the specified pure Compounds.

Definition

Namespace: CapeOpen
Assembly: CapeOpen (in CapeOpen.dll) Version: 1.0.0.0 (1.0.0.0)
private void GetPDependentProperty(
	string[] props,
	double pressure,
	string[] compIds,
	ref double[] propVals
)

Parameters

props  String
The list of Physical Property identifiers. Valid identifiers for pressure-dependent Physical Properties are listed in section 7.5.4
pressure  Double
Pressure (in Pa) at which Physical Properties are evaluated
compIds  String
List of Compound identifiers for which Physical Properties are to be retrieved. Set compIds = UNDEFINED to denote all Compounds in the component that implements the ICapeThermoCompounds interface.
propVals  Double
>Property values for the Compounds specified.

Remarks

The GetPDependentPropList method can be used in order to check which Physical Properties are available.

If the number of requested Physical Properties is P and the number Compounds is C, the propvals array will contain C*P values. The first C will be the values for the first requested Physical Property followed by C values for the second Physical Property, and so on.

Physical Properties are returned in a fixed set of units as specified in section 7.5.4.

If the compIds argument is set to UNDEFINED this is a request to return property values for all compounds in the component that implements the ICapeThermoCompounds interface with the compound order the same as that returned by the GetCompoundList method. For example, if the interface is implemented by a Property Package component the property request with compIds set to UNDEFINED means all compounds in the Property Package rather than all compounds in the Material Object passed to the Property package.

If any Physical Property is not available for one or more Compounds, then undefined valuesm must be returned for those combinations and an ECapeThrmPropertyNotAvailable exception must be raised. If the exception is raised, the client should check all the values returned to determine which is undefined.

Exceptions

ECapeNoImplThe operation is “not” implemented even if this method can be called for reasons of compatibility with the CAPE-OPEN standards. That is to say that the operation exists, but it is not supported by the current implementation. This exception should be raised if no Compounds or no Physical Properties are supported.
ECapeLimitedImplOne or more Physical Properties are not supported by the component that implements this interface. This exception should also be raised (rather than ECapeInvalidArgument) if any element of the props argument is not recognised since the list of Physical Properties in section 7.5.4 is not intended to be exhaustive and an unrecognised Physical Property identifier may be valid. If no Physical Properties at all are supported, ECapeNoImpl should be raised (see above).
ECapeInvalidArgumentTo be used when an invalid argument value is passed, for example UNDEFINED for argument props.
ECapeOutOfBoundsThe value of the pressure is outside of the range of values accepted by the Property Package.
ECapeThrmPropertyNotAvailableAt least one item in the properties list is not available for a particular compound.
ECapeUnknownThe error to be raised when other error(s), specified for the operation, are not suitable.
ECapeBadInvOrderThe error to be raised if the Property Package required the SetMaterial method to be called before calling the GetPDependentProperty method. The error would not be raised when the GetPDependentProperty method is implemented by a Material Object.

See Also