Commit Graph

14 Commits

Author SHA1 Message Date
Jukka Aho 06d6be33df docs(api): Reflow API design documentation and add spacing for readability
- Insert blank lines around headings and list items for better rendering
- Clarify pattern notes: zero-duplication, domain ownership, minimal core
- Improve example spacing so code fences render correctly in generated docs

No code changes; only formatting and readability improvements to the API documentation.
2025-11-18 15:09:09 +02:00
Jukka Aho 096199af20 docs(api): Create documentation-only core API guide for modular architecture
Create src/api.jl as pure documentation (196 lines, NO type definitions):
- Documents the complete modular API architecture
- Lists all 9 domain api.jl files in dependency order
- Explains design philosophy: zero duplication, domain ownership, minimal core
- Shows type hierarchy across all domains
- Demonstrates assembly dispatch pattern (formulation × field)
- Lists 7 advantages of modular architecture

This file is the architectural guide - all actual type definitions live in
domain-specific api.jl files:
- formulations/api.jl (AbstractFormulation, continuum theories)
- fields/api.jl (Displacement, Temperature, DisplacementRotation)
- materials/api.jl (AbstractMaterial, elastic/plastic)
- mesh/api.jl (AbstractMesh, node-to-elements mapping)
- beams/shells/trusses/api.jl (structural formulations)
- topology/api.jl (AbstractTopology{N}, 17 element types)

Completes systematic modular API refactoring - every domain owns its
abstractions, core is documentation-only.
2025-11-15 18:45:06 +02:00
Jukka Aho b3f0531746 Add postprocessing features (#100)
* refactored code for solvers.

* Added elementary tests for least-squares fitting of strain and stress fields

* A more realistic postprocess + Xdmf writing test

* removed debug keyword argument from test

* Rewrite update_xdmf!

New function to update Xdmf file no longer takes Solver object but
xdmf, problem, time and fields to write, for example

julia> update_xdmf!(xdmf, problem, 0.0, ["displacement", "temperature"])

All problems are written separately and put together into one
SpatialCollection, allowing to have more structured Xdmf and making
it easier to write complicated field configurations. Support for Xdmf
API 3.0 added.

* Support for Tensor6 field writing

* moved update_xdmf! to io.jl

* Removed some empty files

* Not use old Postprocessor, obsolete code.

* Not use old XDMF (obsolete code). Fixed test.

* removed some postprocessing to pass test, maybe we should drop abaqus.jl from code as obsolete

* add function get_temporal_collection back, it's used by update_xdmf of modal solver

* postprocess of boundary problems also

* added test for contact pressure. dl+quad test output was written in wrong file, fixed.

* postprocess for contact pressure

* contact pressure postprocess

* with boundary problems always store also the primary unknown field

* Change "reaction force" -> "lambda"

* testing postprocess of reaction force also

* sign convention
2017-03-21 08:36:18 +02:00
Olli Väinölä ccc98b6567 more api functionality + tests. 2015-12-01 16:03:23 +02:00
Olli Väinölä 30b7fd39fd Merge branch 'master' of git://github.com/JuliaFEM/JuliaFEM.jl 2015-12-01 10:18:00 +02:00
Jukka Aho 71df566bf9 separated to submodules 2015-11-30 23:00:21 +02:00
Olli Väinölä 40db53cd83 Api, round 2 2015-11-30 21:50:09 +02:00
Olli Väinölä c2429c9207 testing api 2015-11-30 20:03:28 +02:00
Olli Väinölä ae9729c808 More functionality in api 2015-11-30 18:45:05 +02:00
Olli Väinölä f88fe6419b fixing bugs + adding functionality to api.jl 2015-11-30 13:50:36 +02:00
Olli Väinölä 38239bfa20 Fixing abaqus_reader.jl 2015-11-29 19:59:47 +02:00
Olli Väinölä ecfa1fdc41 Adding functionality to api 2015-11-29 14:38:04 +02:00
Olli Väinölä c71c40b952 Abaqus_reader: can read nodes, elements and sets 2015-11-28 17:03:48 +02:00
Olli Väinölä 21034ae120 Added api.jl and broke abaqus_reader.jl 2015-11-28 13:02:56 +02:00