diff --git a/src/JuliaFEM.jl b/src/JuliaFEM.jl index 4cc6e04..da50480 100644 --- a/src/JuliaFEM.jl +++ b/src/JuliaFEM.jl @@ -167,12 +167,12 @@ export constitutive_matrix_plate, get_thickness # Note: domains/plates/dkt.jl is included later after Mesh is defined (line ~430) -# Physics domain API (abstract type and interface functions) -include("physics/api.jl") +# Physics domain API (abstract type, interface functions, and concrete implementations) +include("physics/abstract.jl") # AbstractPhysics abstract type +include("physics/api.jl") # Interface functions (assemble!, solve!, etc.) +include("physics/types.jl") # Physics struct, DirichletBC, NeumannBC, Constraint +include("physics/boundary_conditions.jl") # BC method implementations export AbstractPhysics, assemble!, solve!, add_dirichlet!, add_neumann! - -# Concrete Physics implementation (uses abstractions from physics/api.jl) -include("physics.jl") export Physics, Constraint, DirichletBC, NeumannBC # Export additional assembly functions @@ -278,7 +278,7 @@ include("basis/lagrange_generator.jl") include("basis/lagrange_generated.jl") # Auto-generated by: julia --project=. src/basis/lagrange_generator.jl # Plate element basis functions (DKT, DST, etc.) -include("basis/plate_elements.jl") # AbstractPlateBasis, DKT +include("domains/plates/dkt_basis.jl") # AbstractPlateBasis, DKT # Export basis types and functions (OLD API) export AbstractBasis, Lagrange, Serendipity