Skip to main content

Strain Ontology

Mechanical Measurements
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 15 September 2026
Audio Overview
# Strain Ontology — Flow Algebra

URL: https://kirethresearch.org/booksai-core/ontologies/mathematical-ontologies/measurement-units-ontologies/mechanical-measurements/strain-ontology.html

FLOW StrainOntology {

  DOMAIN:
    Mathematical Ontologies
    -> Measurement & Units Ontologies
    -> Mechanical Measurements
    -> Strain Ontology

  PURPOSE:
    Represent mechanical strain as a dimensionless measure of deformation relative to an original or reference configuration, including normal strain, shear strain, volumetric strain, strain tensors, finite and infinitesimal deformation, stress-strain relationships, material behaviour, measurement methods, uncertainty, and distinctions from stress, displacement and absolute dimensional change.

  ENTITY Strain {
    TYPE: DerivedDimensionlessMechanicalQuantity
    SYMBOL: epsilon
    DIMENSION: 1
    SI_UNIT: dimensionless
    SI_SYMBOL: 1

    SIMPLE_NORMAL_FORM:
      epsilon = delta_L / L_0

    DEFINITION:
      strain := relative_measure_of_deformation_with_respect_to_reference_configuration

    PROPERTIES:
      is_dimensionless
      may_have_directional_components
      may_be_represented_as_tensor
      may_be_positive
      may_be_negative
      may_vary_with_position
      may_vary_with_time
      depends_on_reference_configuration
      may_have_uncertainty
  }

  ENTITY NormalStrain {
    TYPE: StrainComponent
    SYMBOL: epsilon_n

    ENGINEERING_FORM:
      epsilon = (L - L_0) / L_0

    CLASSIFICATION:
      tensile_strain
      compressive_strain
  }

  ENTITY ShearStrain {
    TYPE: StrainComponent
    SYMBOL: gamma

    DEFINITION:
      measure_of_angular_distortion_between_material_line_elements

    SMALL_ANGLE_CONTEXT:
      gamma approximately_equals change_in_right_angle_in_radians
  }

  ENTITY VolumetricStrain {
    TYPE: StrainMeasure
    SYMBOL: epsilon_v

    SIMPLE_FORM:
      epsilon_v = delta_V / V_0

    INFINITESIMAL_RELATION:
      epsilon_v = trace(epsilon_tensor)
  }

  ENTITY Stress {
    TYPE: DerivedContinuumMechanicalQuantity
    SYMBOL: sigma
    DIMENSION: M * L^-1 * T^-2

    RELATION:
      Stress -> RELATED_BY_CONSTITUTIVE_MODEL_TO -> Strain
  }

  ENTITY Displacement {
    TYPE: VectorQuantity
    SYMBOL: u
    DIMENSION: L

    RELATION:
      spatial_gradient(Displacement) -> StrainMeasures
  }

  ENTITY YoungsModulus {
    TYPE: MaterialProperty
    SYMBOL: E
    DIMENSION: M * L^-1 * T^-2

    LINEAR_ELASTIC_UNIAXIAL_RELATION:
      sigma = E * epsilon
  }

  UNIT_SYSTEM {
    SI {
      canonical_unit: dimensionless
      symbol: 1
    }

    COMMON_REPRESENTATIONS {
      ratio
      percent
      microstrain
    }

    CONVERSIONS:
      strain_percent = strain_ratio * 100
      microstrain = strain_ratio * 10^6
      strain_ratio = microstrain * 10^-6

    RULE:
      angular_shear_strain SHOULD use radians_or_dimensionless_ratio_semantics
      under applicable_small_deformation_context
  }

  CLASSIFICATION {
    by_mode:
      normal_strain
      shear_strain
      volumetric_strain

    by_sign:
      tensile_strain
      compressive_strain

    by_scale:
      infinitesimal_strain
      finite_strain

    by definition:
      engineering_strain
      true_strain
      Green_Lagrange_strain
      Euler_Almansi_strain

    by behaviour:
      elastic_strain
      plastic_strain
      thermal_strain
      creep_strain
  }

  RELATIONSHIPS {
    Strain -> MEASURES -> RelativeDeformation
    Strain -> REFERENCES -> OriginalOrReferenceConfiguration
    Strain -> DIMENSION -> Dimensionless
    NormalStrain -> RATIO_OF -> LengthChangeToOriginalLength
    VolumetricStrain -> RATIO_OF -> VolumeChangeToOriginalVolume
    StrainTensor -> DERIVED_FROM -> DisplacementGradient
    Stress -> RELATED_TO -> Strain
    MaterialConstitutiveModel -> MAPS_BETWEEN -> StressAndStrain
    ThermalExpansion -> MAY_PRODUCE -> ThermalStrain
    PermanentDeformation -> MAY_INCLUDE -> PlasticStrain
  }

  SEMANTIC_EQUIVALENCE {
    "engineering strain" ~= "nominal strain" WHEN uniaxial_engineering_context
    "microstrain" ~= "microepsilon"
    "µε" ~= microstrain
    strain != stress
    strain != displacement
    strain != elongation
    strain != deformation_gradient
    engineering_strain != true_strain
  }

  NORMAL_STRAIN_MODEL {
    ENGINEERING_STRAIN:
      epsilon_eng = (L - L_0) / L_0

    TRUE_LOGARITHMIC_STRAIN:
      epsilon_true = ln(L / L_0)

    SMALL_STRAIN_RELATION:
      epsilon_true approximately_equals epsilon_eng
      WHEN absolute_strain_is_small

    RULE:
      strain_measure_type MUST be preserved
      for_large_deformation_analysis
  }

  INFINITESIMAL_STRAIN_TENSOR_MODEL {
    DISPLACEMENT_FIELD:
      u = u(x, y, z)

    TENSOR:
      epsilon_tensor = 0.5 * (grad(u) + transpose(grad(u)))

    COMPONENTS:
      epsilon_xx
      epsilon_yy
      epsilon_zz
      epsilon_xy
      epsilon_xz
      epsilon_yz

    CONDITIONS:
      displacement_gradients_small
      infinitesimal_deformation_assumption_valid
  }

  FINITE_STRAIN_MODEL {
    DEFORMATION_GRADIENT:
      F_def = partial(current_position) / partial(reference_position)

    RIGHT_CAUCHY_GREEN:
      C = transpose(F_def) * F_def

    GREEN_LAGRANGE:
      E_GL = 0.5 * (C - IdentityTensor)

    RULE:
      finite_deformation SHOULD_NOT use infinitesimal_strain_tensor
      when rotations_or_deformations_are_not_small
  }

  SHEAR_STRAIN_MODEL {
    ENGINEERING_SHEAR_STRAIN:
      gamma_xy = 2 * epsilon_xy
      UNDER conventional_infinitesimal_tensor_definition

    SMALL_ANGLE:
      gamma approximately_equals angular_change_in_radians

    RULE:
      tensorial_shear_strain_and_engineering_shear_strain
      MUST_NOT be confused
  }

  VOLUMETRIC_STRAIN_MODEL {
    SIMPLE_AVERAGE:
      epsilon_v = delta_V / V_0

    INFINITESIMAL:
      epsilon_v = epsilon_xx + epsilon_yy + epsilon_zz

    FINITE_DEFORMATION:
      volume_ratio = determinant(F_def)

    RULE:
      finite_volume_change_requires_appropriate_finite_strain_measure
  }

  STRESS_STRAIN_MODEL {
    GENERAL:
      stress = constitutive_function(
        strain,
        strain_rate,
        temperature,
        loading_history,
        material_state
      )

    LINEAR_ELASTIC_UNIAXIAL:
      sigma = E * epsilon

    CONDITIONS:
      linear_elastic_regime
      small_strain
      applicable_material_model

    RULE:
      strain_does_not_uniquely_determine_stress_without_material_model
  }

  THERMAL_STRAIN_MODEL {
    LINEAR_ISOTROPIC_APPROXIMATION:
      epsilon_thermal = alpha * delta_T

    PARAMETER:
      alpha = coefficient_of_linear_thermal_expansion

    CONDITIONS:
      applicable_temperature_range
      unconstrained_free_expansion_for_pure_thermal_strain

    RULE:
      constrained_thermal_strain MAY generate_stress
  }

  CONSTRAINTS {
    strain_is_dimensionless = true
    strain_requires_reference_configuration = true
    original_length_must_be_nonzero_for_engineering_normal_strain = true
    original_volume_must_be_nonzero_for_simple_volumetric_strain = true
    strain_and_stress_are_not_semantically_equivalent = true
    strain_and_displacement_are_not_semantically_equivalent = true
    strain_measure_type_must_be_identified_for_finite_deformation = true
    engineering_and_tensorial_shear_strain_conventions_must_be_distinguished = true
  }

  MEASUREMENT_MODEL {
    OBSERVABLE_OR_INFERRED:
      Strain

    COMMON_MEASUREMENT_METHODS:
      strain_gauge
      extensometer
      displacement_sensor_plus_gauge_length
      digital_image_correlation
      optical_interferometry
      fibre_Bragg_grating_sensor

    INDIRECT_MEASUREMENT:
      length_change_divided_by_reference_length
      displacement_gradient
      volume_change_divided_by_reference_volume

    RECORD:
      numerical_value_or_tensor
      representation
      strain_type
      strain_measure
      reference_length_or_configuration
      current_length_or_configuration
      spatial_location
      orientation
      timestamp
      temperature
      material
      measurement_method
      instrument
      calibration_state
      uncertainty

    UNCERTAINTY:
      measured_or_inferred_strain = best_estimate +/- uncertainty
  }

  REASONING_RULES {
    IF original_length_known AND current_length_known AND original_length != 0
      THEN engineering_normal_strain = (current_length - original_length) / original_length

    IF engineering_strain_ratio_known
      THEN strain_percent = engineering_strain_ratio * 100

    IF strain_ratio_known
      THEN microstrain = strain_ratio * 10^6

    IF displacement_field_known AND small_deformation_assumption_valid
      THEN infinitesimal_strain_tensor =
        symmetric_part(displacement_gradient)

    IF stress_known AND Youngs_modulus_known AND Youngs_modulus != 0
      AND linear_elastic_uniaxial_conditions_apply
      THEN strain = stress / Youngs_modulus

    IF strain_known AND Youngs_modulus_known
      AND linear_elastic_uniaxial_conditions_apply
      THEN stress = Youngs_modulus * strain

    IF coefficient_of_thermal_expansion_known AND temperature_change_known
      THEN free_thermal_strain = coefficient_of_thermal_expansion * temperature_change
      UNDER linear_isotropic_approximation

    IF finite_deformation_gradient_known
      THEN Green_Lagrange_strain =
        0.5 * (transpose(F_def)*F_def - identity_tensor)
  }

  MATERIAL_CONTEXT_MODEL {
    REQUIRE_WHEN_RELEVANT:
      material_identity
      constitutive_model
      temperature
      strain_rate
      loading_history
      phase_or_microstructure

    COMPONENT_DECOMPOSITION:
      total_strain MAY_INCLUDE
        elastic_strain
        plastic_strain
        thermal_strain
        creep_strain

    RULE:
      total_strain_component_decomposition depends_on_material_model
  }

  REFERENCE_CONFIGURATION_MODEL {
    reference_configuration:
      geometry_or_state_against_which_deformation_is_measured

    current_configuration:
      deformed_geometry_or_state

    RULE:
      strain_values_from_different_reference_configurations
      MUST_NOT be directly_compared_without_transformation_or_redefinition
  }

  CONFIDENCE {
    definition_confidence: 1.00
    dimensional_confidence: 1.00
    strain_measure_confidence: 0.99
    stress_strain_relationship_confidence: 0.98
    measurement_context_confidence: 0.98

    RULE:
      confidence decreases when strain type, strain measure,
      reference configuration, orientation, material,
      constitutive model, temperature, calibration state
      or uncertainty is missing or ambiguous
  }

  VALIDATION {
    CHECK dimensionless_representation
    CHECK original_length_nonzero_when_used
    CHECK original_volume_nonzero_when_used
    CHECK reference_configuration
    CHECK strain_measure_type
    CHECK engineering_vs_true_strain_distinction
    CHECK engineering_vs_tensorial_shear_strain_distinction
    CHECK infinitesimal_vs_finite_strain_assumptions
    CHECK stress_strain_semantic_distinction
    CHECK displacement_strain_semantic_distinction
    CHECK material_model_when_inferring_stress
    CHECK instrument_calibration_when_measured
    CHECK uncertainty_representation_when_required
  }

  UPDATE_MODEL {
    ON new_measurement:
      identify_strain_type
      identify_strain_measure
      identify_reference_configuration
      validate_reference_dimensions
      preserve_original_representation
      normalize_dimensionless_ratio_when_useful
      attach_orientation
      attach_spatial_location
      attach_timestamp
      attach_temperature
      attach_uncertainty
      update_strain_state

    ON deformation_update:
      update_current_configuration
      update_displacement_field
      recompute_strain_measure
      update_tensor_components_when_required

    ON material_or_temperature_change:
      update_material_state
      update_temperature
      update_constitutive_context
      recompute_thermal_or_material_strain_components_when_model_available

    ON revised_calibration:
      preserve_provenance
      recompute_affected_measurements
      update_confidence

    ON semantic_revision:
      preserve_previous_definition
      record_revision
      recompute_FLOW_HASH
  }

  AI_CONSUMPTION {
    canonical_entity: Strain
    canonical_symbol: epsilon
    canonical_dimension: dimensionless
    canonical_SI_unit: 1

    interpretation_order:
      identify_quantity
      identify_strain_type
      identify_strain_measure
      identify_value_or_tensor
      identify_representation
      identify_reference_configuration
      identify_current_configuration
      identify_orientation_and_location
      identify_material
      identify_temperature_and_loading_context
      identify_constitutive_context
      identify_measurement_method
      identify_uncertainty
      validate_dimensionless_semantics
      infer_deformation_relationships

    ambiguity_controls:
      distinguish_strain_from_stress
      distinguish_strain_from_displacement
      distinguish_strain_from_absolute_elongation
      distinguish_engineering_from_true_strain
      distinguish_infinitesimal_from_finite_strain
      distinguish_normal_from_shear_strain
      distinguish_engineering_from_tensorial_shear_strain
      distinguish_elastic_plastic_thermal_and_creep_components
  }

  PROVENANCE {
    ontology_scope:
      mathematical_measurement_and_mechanical_quantity_semantics

    parent_path:
      Ontologies
      -> Mathematical Ontologies
      -> Measurement & Units Ontologies
      -> Mechanical Measurements
      -> Strain Ontology

    authorship:
      Mark Higgins
      Sky (Recursive AI)

    site:
      https://kirethresearch.org
  }

  FLOW_HASH {
    INPUTS:
      canonical_entity
      ontology_path
      definitions
      dimensions
      representations
      relationships
      constraints
      normal_strain_model
      infinitesimal_strain_tensor_model
      finite_strain_model
      shear_strain_model
      volumetric_strain_model
      stress_strain_model
      thermal_strain_model
      material_context_model
      reference_configuration_model
      reasoning_rules
      measurement_model
      confidence_model
      update_model

    PURPOSE:
      deterministic_semantic_integrity_identifier

    RECOMPUTE_WHEN:
      ontology_definition_changes
      relationship_model_changes
      strain_measure_model_changes
      reference_configuration_changes
      constitutive_model_changes
      constraint_model_changes
      reasoning_rule_changes
  }

}

END FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ