From 5d8a821be52c47328cc0f7a99291a15bac9f7ed3 Mon Sep 17 00:00:00 2001 From: Jukka Aho Date: Sat, 9 May 2026 17:34:38 +0300 Subject: [PATCH] refactor(materials): drop LinearElastic abstract include and state_type `AbstractElasticMaterial` already comes from `materials/api.jl`, and IP state is inferred via `required_state_variables`, so drop the stale include and `state_type` hook. - Remove `include(\"abstract_material.jl\")` and redundant trait comments. - Delete `state_type(::Type{LinearElastic}) = EmptyState`. --- src/materials/linear_elastic.jl | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/materials/linear_elastic.jl b/src/materials/linear_elastic.jl index 901e6e9..accd674 100644 --- a/src/materials/linear_elastic.jl +++ b/src/materials/linear_elastic.jl @@ -4,9 +4,6 @@ Linear elastic (Hookean) material model using Tensors.jl. using Tensors -# Load abstract types -include("abstract_material.jl") - """ LinearElastic <: AbstractElasticMaterial @@ -35,17 +32,8 @@ Convenience constructor with keyword arguments. """ LinearElastic(; E, ν) = LinearElastic(Float64(E), Float64(ν)) -# Trait declaration: LinearElastic has constant tangent modulus material_behavior(::LinearElastic) = StatelessConstantTangent() - -# State type trait: LinearElastic is stateless (uses EmptyState) -state_type(::Type{LinearElastic}) = EmptyState - -# New trait system: Physics and state variable requirements -# LinearElastic supports 3D elasticity only supported_physics(::LinearElastic) = (Elasticity{3}(),) - -# LinearElastic is stateless - no internal state variables required_state_variables(::LinearElastic) = () """