-- -------------------------------------------------------------------------- -- -- Title : Draft Standard VHDL 1076.1.1 Packages for Multiple Energy -- : Domain Support. -- -- Library : This package shall be compiled into a library symbolically -- : named IEEE. -- -- Developers : IEEE 1076.1.1 Working Group -- -- Purpose : This package contains declarations for modeling in the -- : fluidic energy domain. -- -- Note : -- -- -------------------------------------------------------------------------- -- Modification History : -- -- Version Date Description -- 1.0 6 July 2001 Original version. -- 1.1 4 March 2002 FDL 2001 & BMAS 2001 revisions -- 1.2 31 Aug 2002 DAC 2002 revisions -- 1.3 30 Sep 2002 FDL 2002 revisions -- -------------------------------------------------------------------------- library IEEE; use IEEE.FUNDAMENTAL_CONSTANTS.all; package FLUIDIC_SYSTEMS is -- type declarations -- subtype declarations subtype PRESSURE is REAL tolerance "DEFAULT_PRESSURE"; subtype VFLOW_RATE is REAL tolerance "DEFAULT_VFLOW_RATE"; subtype VOLUME is REAL tolerance "DEFAULT_VOLUME"; subtype DENSITY is REAL tolerance "DEFAULT_DENSITY"; subtype VISCOSITY is REAL tolerance "DEFAULT_VISCOSITY"; subtype FRESISTANCE is REAL tolerance "DEFAULT_FRESISTANCE"; subtype FCAPACITANCE is REAL tolerance "DEFAULT_FCAPACITANCE"; subtype INERTANCE is REAL tolerance "DEFAULT_INERTANCE"; -- attribute declarations attribute UNIT of PRESSURE : subtype is "Pascal"; attribute UNIT of VFLOW_RATE : subtype is "meter^3/second"; attribute UNIT of DENSITY : subtype is "kilogram/meter^3"; attribute UNIT of VISCOSITY : subtype is "Newton-second/meter^2"; attribute UNIT of VOLUME : subtype is "meter^3"; attribute UNIT of FRESISTANCE : subtype is "Newton-second/meter^5"; attribute UNIT of FCAPACITANCE : subtype is "meter^5/Newton"; attribute UNIT of INERTANCE : subtype is "Newton-second^2/meter^5"; -- SYMBOL for abbreviation of UNIT attribute SYMBOL of PRESSURE : subtype is "P"; attribute SYMBOL of VFLOW_RATE : subtype is "m^3/s"; attribute SYMBOL of DENSITY : subtype is "kg/m^3"; attribute SYMBOL of VISCOSITY : subtype is "N-s/m^2"; attribute SYMBOL of VOLUME : subtype is "m^3"; attribute SYMBOL of FRESISTANCE : subtype is "N-s/m^5"; attribute SYMBOL of FCAPACITANCE : subtype is "m^5/N"; attribute SYMBOL of INERTANCE : subtype is "N-s^2/m^5"; -- nature declarations nature FLUIDIC is PRESSURE across VFLOW_RATE through FLUIDIC_REF reference; nature FLUIDIC_VECTOR is array (NATURAL range <>) of FLUIDIC; -- vector subtype declarations subtype PRESSURE_VECTOR is FLUIDIC_VECTOR'across; subtype VFLOW_RATE_VECTOR is FLUIDIC_VECTOR'through; subtype VOLUME_VECTOR is REAL_VECTOR tolerance "DEFAULT_VOLUME"; subtype DENSITY_VECTOR is REAL_VECTOR tolerance "DEFAULT_DENSITY"; subtype VISCOSITY_VECTOR is REAL_VECTOR tolerance "DEFAULT_VISCOSITY"; subtype FRESISTANCE_VECTOR is REAL_VECTOR tolerance "DEFAULT_FRESISTANCE"; subtype FCAPACITANCE_VECTOR is REAL_VECTOR tolerance "DEFAULT_FCAPACITANCE"; subtype INERTANCE_VECTOR is REAL_VECTOR tolerance "DEFAULT_INERTANCE"; -- attributes of vector subtypes attribute UNIT of PRESSURE_VECTOR : subtype is "Pascal"; attribute UNIT of VFLOW_RATE_VECTOR : subtype is "meter^3/second"; attribute UNIT of DENSITY_VECTOR : subtype is "kilogram/meter^3"; attribute UNIT of VISCOSITY_VECTOR : subtype is "Newton-second/meter^2"; attribute UNIT of VOLUME_VECTOR : subtype is "meter^3"; attribute UNIT of FRESISTANCE_VECTOR : subtype is "Newton-second/meter^5"; attribute UNIT of FCAPACITANCE_VECTOR : subtype is "meter^5/Newton"; attribute UNIT of INERTANCE_VECTOR : subtype is "Newton-second^2/meter^5"; -- SYMBOL for abbreviation of UNIT attribute SYMBOL of PRESSURE_VECTOR : subtype is "P"; attribute SYMBOL of VFLOW_RATE_VECTOR : subtype is "m^3/s"; attribute SYMBOL of DENSITY_VECTOR : subtype is "kg/m^3"; attribute SYMBOL of VISCOSITY_VECTOR : subtype is "N-s/m^2"; attribute SYMBOL of VOLUME_VECTOR : subtype is "m^3"; attribute SYMBOL of FRESISTANCE_VECTOR : subtype is "N-s/m^5"; attribute SYMBOL of FCAPACITANCE_VECTOR : subtype is "m^5/N"; attribute SYMBOL of INERTANCE_VECTOR : subtype is "N-s^2/m^5"; -- subnature declarations -- object declarations -- operation declarations (e.g., subprograms) -- alias declarations end package FLUIDIC_SYSTEMS;