Programming Reference for VirtualLab Fusion
2025.1
|
This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
There are different material classes possible that can contain material properties with different definition. All material classes have to have this interface to access the material properties.
More...
Public Member Functions | |
override object | Clone () |
Create deep copy of object. | |
bool | Edit () |
Calls the edit dialog of the catalog entry. | |
override bool | Equals (object obj, EqualityIntent equalityIntent) |
Determines whether two materials are equal, i.e. whether all properties have the same value. | |
double | GetAbsorptionCoeff (double wavelength) |
Returns the absorption for the specified Wavelength. Is no absorption for this Wavelength defined an ArgumentException is thrown. | |
void | GetAbsorptionMinMaxWavelength (out double minWavelength, out double maxWavelength) |
Returns minimum and maximum Wavelength for that a absorption is available. | |
Complex | GetComplexRefractiveIndex (double vacuumWavelength, double temperatureInDegrees, double pressureInPascal) |
Returns the absolutely defined complex refractive index for the given wavelength. | |
void | GetMinMaxWavelength (out double minWavelength, out double maxWavelength) |
Returns the valid min/max wavelength of the medium. | |
double | GetRealRefractiveIndex (double vacuumWavelength, bool checkForValidWavelengthRange, double temperatureInDegrees, double pressureInPascal) |
Returns the absolutely defined (!) refractive index for the specified Wavelength. If there is no refractive index for this Wavelength given, an ArgumentException is thrown. | |
double | GetRealRefractiveIndex (double vacuumWavelength, double temperatureInDegrees, double pressureInPascal) |
Returns the absolutely defined refractive index for the specified Wavelength. Is no refractive index for this Wavelength given, an ArgumentException is thrown. | |
double | GetRealRefractiveIndexAsDefined (double wavelength, bool checkForValidWavelengthRange=true, double vacuumWavelengthIfKnown=0, double temperatureInDegrees=20, double pressureInPascal=Globals.PascalsPerAtm) |
Returns the refractive index relative to air for the specified Wavelength. Is no refractive index for this Wavelength defined an ArgumentException is thrown. | |
void | GetRealRefractiveIndexMinMaxWavelength (out double minWavelength, out double maxWavelength, bool giveVacuumWavelengths) |
Returns wavelength range for that a refractive index is available. If giveVacuumWavelengths is true , the values are vacuum wavelengths, otherwise they refer to the reference material. | |
PhysicalValueRange | GetRealRefractiveIndexWavelengthRange (bool giveVacuumWavelengths=true) |
Gets the valid wavelength range for calculating real refractive indices. | |
double | GetTemperatureInducedRefractiveIndexChange (double temperatureInDegrees, double refractiveIndexAtStandardConditions, double vacuumWavelength) |
Method which calculates the change in the real refractive index which is caused by a temperature difference (between the application temperature and the measurement temperature). | |
PhysicalValueRange | GetWavelengthRange () |
Gets the allowed wavelength range which is the intersection of the allowed wavelength range for the real part of the refractive index and for the absorption index. | |
virtual bool | IsConsistent (out ArrayList messageList) |
Virtual method to check the consistency of the material. | |
Material () | |
Standard constructor. | |
Static Public Member Functions | |
static Material | Load (string fileName) |
Load constructor. | |
Public Attributes | |
bool | RefractiveIndexDefinedAsAbsolute |
Is the given refractive index defined as absolute or as relative to the reference material? | |
Properties | |
Type | CatalogClass [get] |
The catalogs are of type MaterialsCatalog. | |
string | CatalogName [get, set] |
Name of the catalog the material belongs to. | |
List< string > | Categories [get, set] |
Each string in the list represents one category the catalog belongs to. The format is "subcatalog|subsubcatalog...". | |
EditedInType | EditedWithin [get, set] |
Gets and sets how to show the edit dialog of the interface. Must be set prior to calling the edit dialog. | |
virtual string | FixedName [get] |
string | HelpChapterPreview [get] |
The help chapter for the preview of the ICatalogEntry. | |
bool | IsEditable [get] |
Flag which defines whether the catalog entry is editable. | |
string | Name [get, set] |
Name of the material. Has to be unique if material shall be stored into a catalog. | |
List< Parameter > | ParameterRunParameters [get] |
public property to get the parameters used for parameter run | |
Material | ReferenceMaterial [get, set] |
Get and set the reference material the relative refractive indices are related to (usually air). If a new reference material is set, this material is set to relatively defined refractive indices. | |
StateOfMatter | StateOfMatter [get, set] |
State of matter of this material. | |
This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
There are different material classes possible that can contain material properties with different definition. All material classes have to have this interface to access the material properties.
override object Clone | ( | ) |
Create deep copy of object.
|
abstract |
Calls the edit dialog of the catalog entry.
override bool Equals | ( | object | obj, |
EqualityIntent | equalityIntent | ||
) |
Determines whether two materials are equal, i.e. whether all properties have the same value.
obj | The material to compare with this material. |
equalityIntent | Defines what kind of equality you want to check when comparing two objects, for example all values or physical equality. |
True
if the properties and variables of both materials are equal.
|
abstract |
Returns the absorption for the specified Wavelength. Is no absorption for this Wavelength defined an ArgumentException is thrown.
wavelength | Wavelength for that the absorption should be returned. |
|
abstract |
Returns minimum and maximum Wavelength for that a absorption is available.
minWavelength | Minimum Wavelength. |
maxWavelength | Maximum Wavelength. |
Complex GetComplexRefractiveIndex | ( | double | vacuumWavelength, |
double | temperatureInDegrees, | ||
double | pressureInPascal | ||
) |
Returns the absolutely defined complex refractive index for the given wavelength.
vacuumWavelength | The vacuum wavelength needed for the calculation of the refractive index. |
temperatureInDegrees | Temperature to get the index for. |
pressureInPascal | Pressure to get the index for. |
void GetMinMaxWavelength | ( | out double | minWavelength, |
out double | maxWavelength | ||
) |
Returns the valid min/max wavelength of the medium.
minWavelength | Returns the larger wavelength of both the minimum wavelength for refractive indices and absorption coefficients. |
maxWavelength | Returns the smaller wavelength of both the maximum wavelength for refractive indices and absorption coefficients. |
double GetRealRefractiveIndex | ( | double | vacuumWavelength, |
bool | checkForValidWavelengthRange, | ||
double | temperatureInDegrees, | ||
double | pressureInPascal | ||
) |
Returns the absolutely defined (!) refractive index for the specified Wavelength. If there is no refractive index for this Wavelength given, an ArgumentException is thrown.
vacuumWavelength | Vacuum wavelength the refractive index should be returned for. |
checkForValidWavelengthRange | If false , no check is done whether the wavelength is valid. This option should ever be true , except for the case of calculating the vacuum wavelength, where a stack overflow has to be avoided. |
temperatureInDegrees | The temperature in degrees Celsius to calculate the refractive index for. |
pressureInPascal | The pressure in pascals to calculate the refractive index for. |
double GetRealRefractiveIndex | ( | double | vacuumWavelength, |
double | temperatureInDegrees, | ||
double | pressureInPascal | ||
) |
Returns the absolutely defined refractive index for the specified Wavelength. Is no refractive index for this Wavelength given, an ArgumentException is thrown.
vacuumWavelength | Vacuum wavelength the refractive index should be returned for. |
temperatureInDegrees | The temperature in degrees Celsius to calculate the refractive index for. |
pressureInPascal | The pressure in pascals to calculate the refractive index for. |
|
abstract |
Returns the refractive index relative to air for the specified Wavelength. Is no refractive index for this Wavelength defined an ArgumentException is thrown.
wavelength | Wavelength (as measured in reference material) for that the refractive index should be returned. |
checkForValidWavelengthRange | If false , no check is done whether the wavelength is valid. This option should ever be true , except for the case of calculating the vacuum wavelength, where a stack overflow has to be avoided. |
vacuumWavelengthIfKnown | If known and checkForValidWavelengthRange == true, the vacuum wavelength must not be calculated again for checking the valid wavelength range. |
temperatureInDegrees | The temperature in degrees Celsius to calculate the refractive index for. |
pressureInPascal | The pressure in pascals to calculate the refractive index for. |
|
abstract |
Returns wavelength range for that a refractive index is available. If giveVacuumWavelengths
is true
, the values are vacuum wavelengths, otherwise they refer to the reference material.
minWavelength | Minimum Wavelength. |
maxWavelength | Maximum Wavelength. |
giveVacuumWavelengths | If true, the wavelength range of the reference material's refractive index will be considered, and vacuum wavelengths will be returned. If the material is defined absolutely, the parameter will be ignored. |
PhysicalValueRange GetRealRefractiveIndexWavelengthRange | ( | bool | giveVacuumWavelengths = true | ) |
Gets the valid wavelength range for calculating real refractive indices.
giveVacuumWavelengths | If true, the wavelength range of the reference material's refractive index will be considered, and vacuum wavelengths will be returned. If the material is defined absolutely, the parameter will be ignored. This optional parameter is true by default. |
double GetTemperatureInducedRefractiveIndexChange | ( | double | temperatureInDegrees, |
double | refractiveIndexAtStandardConditions, | ||
double | vacuumWavelength | ||
) |
Method which calculates the change in the real refractive index which is caused by a temperature difference (between the application temperature and the measurement temperature).
temperatureInDegrees | Application temperature in degrees Celsius. |
refractiveIndexAtStandardConditions | The refractive index at standard (i.e. measurement) conditions. |
vacuumWavelength | The vacuum wavelength to get the refractive index for. |
PhysicalValueRange GetWavelengthRange | ( | ) |
Gets the allowed wavelength range which is the intersection of the allowed wavelength range for the real part of the refractive index and for the absorption index.
Null
if the two wavelength ranges do not overlap.
|
virtual |
Virtual method to check the consistency of the material.
messageList | Array of ConsistenyErrorOrWarning objects |
|
static |
Load constructor.
fileName | Full path and file name of the material to load. |
|
getset |
Gets and sets how to show the edit dialog of the interface. Must be set prior to calling the edit dialog.