FUNCTION derive_dimensional_exponents

(* SCHEMA step_merged_ap_schema; *)
-- DIFF IN AP224
-- DIFF IN AP232
FUNCTION derive_dimensional_exponents
      (x : unit ) : dimensional_exponents;
   LOCAL
      result : dimensional_exponents := dimensional_exponents(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
   END_LOCAL;
      IF 'STEP_MERGED_AP_SCHEMA.DERIVED_UNIT' IN TYPEOF(x) THEN
         REPEAT i := LOINDEX(x\derived_unit.elements) TO HIINDEX(x\derived_unit.elements);
            result.length_exponent := result.length_exponent + x\derived_unit.elements[i]\derived_unit_element.exponent * x\derived_unit.elements[i]\derived_unit_element.unit\named_unit.dimensions.length_exponent;
            result.mass_exponent := result.mass_exponent + x\derived_unit.elements[i]\derived_unit_element.exponent * x\derived_unit.elements[i]\derived_unit_element.unit\named_unit.dimensions.mass_exponent;
            result.time_exponent := result.time_exponent + x\derived_unit.elements[i]\derived_unit_element.exponent * x\derived_unit.elements[i]\derived_unit_element.unit\named_unit.dimensions.time_exponent;
            result.electric_current_exponent := result.electric_current_exponent + x\derived_unit.elements[i]\derived_unit_element.exponent * x\derived_unit.elements[i]\derived_unit_element.unit\named_unit.dimensions.electric_current_exponent;
            result.thermodynamic_temperature_exponent := result.thermodynamic_temperature_exponent + x\derived_unit.elements[i]\derived_unit_element.exponent * x\derived_unit.elements[i]\derived_unit_element.unit\named_unit.dimensions.thermodynamic_temperature_exponent;
            result.amount_of_substance_exponent := result.amount_of_substance_exponent + x\derived_unit.elements[i]\derived_unit_element.exponent * x\derived_unit.elements[i]\derived_unit_element.unit\named_unit.dimensions.amount_of_substance_exponent;
            result.luminous_intensity_exponent := result.luminous_intensity_exponent + x\derived_unit.elements[i]\derived_unit_element.exponent * x\derived_unit.elements[i]\derived_unit_element.unit\named_unit.dimensions.luminous_intensity_exponent;
         END_REPEAT;
      ELSE
         result := x\named_unit.dimensions;
      END_IF;
      RETURN (result);
END_FUNCTION;

Referenced By

Defintion derive_dimensional_exponents is references by the following definitions:
DefinitionType
 absorbed_dose_unit ENTITY
 acceleration_unit ENTITY
 area_unit ENTITY
 capacitance_unit ENTITY
 conductance_unit ENTITY
 conversion_based_unit ENTITY
 dose_equivalent_unit ENTITY
 electric_charge_unit ENTITY
 electric_potential_unit ENTITY
 energy_unit ENTITY
 force_unit ENTITY
 frequency_unit ENTITY
 illuminance_unit ENTITY
 inductance_unit ENTITY
 luminous_flux_unit ENTITY
 magnetic_flux_density_unit ENTITY
 magnetic_flux_unit ENTITY
 power_unit ENTITY
 pressure_unit ENTITY
 projected_zone_definition ENTITY
 radioactivity_unit ENTITY
 resistance_unit ENTITY
 thermal_resistance_unit ENTITY
 valid_units FUNCTION
 velocity_unit ENTITY
 volume_unit ENTITY


[Top Level Definitions] [Exit]

Generated by STEP Tools® EXPRESS to HTML Converter
2020-07-28T17:02:20-04:00