modify docu
This commit is contained in:
@@ -4,24 +4,25 @@
|
||||
|
||||
FESA 솔버의 입력 파일은 Abaqus input file이다. 다만 초기 FESA는 Abaqus 전체 문법 호환을 목표로 하지 않고, 기능별로 지원할 Abaqus keyword subset과 내부 모델 매핑을 명확히 정의한다.
|
||||
|
||||
기본 파일명은 `docs/io-definitions/<feature-id>-io.md` 형식을 사용한다. 각 문서는 Requirement Agent, Formulation Agent, Numerical Review Agent의 산출물을 입력으로 받아 Abaqus `.inp` 입력 계약과 결과 CSV schema를 정의해야 한다.
|
||||
기본 파일명은 `docs/io-definitions/<feature-id>-io.md` 형식을 사용한다. 각 문서는 Requirement Agent, Formulation Agent, Numerical Review Agent의 산출물을 입력으로 받아 Abaqus `.inp` 입력 계약, authoritative HDF5 result schema, deterministic CSV view schema를 정의해야 한다.
|
||||
|
||||
## I/O Definition Agent 역할
|
||||
|
||||
I/O Definition Agent는 Abaqus input file subset, 내부 solver model mapping, output request mapping, comparison CSV schema를 정의한다.
|
||||
I/O Definition Agent는 Abaqus input file subset, 내부 solver model mapping, output request mapping, HDF5 result schema, comparison CSV view schema를 정의한다.
|
||||
|
||||
수행한다:
|
||||
- 기능별 supported Abaqus keyword subset을 정의한다.
|
||||
- unsupported, ignored-with-warning, requires-user-decision keyword 정책을 정의한다.
|
||||
- model data와 history data를 내부 solver 개념으로 매핑한다.
|
||||
- node, element, set, material, section, boundary condition, load, step, output request의 의미 계약을 정의한다.
|
||||
- `displacements.csv`, `reactions.csv`, `element_forces.csv`, `stresses.csv` schema를 정의한다.
|
||||
- `results.h5`의 authoritative HDF5 schema를 정의한다.
|
||||
- `csv/displacements.csv`, `csv/reactions.csv`, `csv/element_forces.csv`, `csv/stresses.csv` deterministic CSV view schema를 정의한다.
|
||||
|
||||
수행하지 않는다:
|
||||
- parser를 구현하지 않는다.
|
||||
- C++ API나 파일 구조를 설계하지 않는다.
|
||||
- Abaqus, Nastran 또는 레퍼런스 솔버를 직접 실행하지 않는다.
|
||||
- reference CSV 결과를 생성하지 않는다.
|
||||
- reference HDF5 파일이나 deterministic CSV view를 생성하지 않는다.
|
||||
- solver 결과와 reference 결과를 비교하지 않는다.
|
||||
- release readiness를 승인하지 않는다.
|
||||
- 명시적으로 정의되지 않은 Abaqus full compatibility를 주장하지 않는다.
|
||||
@@ -107,9 +108,33 @@ I/O Definition Agent는 Abaqus input file subset, 내부 solver model mapping, o
|
||||
- step: <semantic contract>
|
||||
- output_request: <semantic contract>
|
||||
|
||||
## Output and CSV Schemas
|
||||
## Output HDF5 Schema
|
||||
|
||||
### displacements.csv
|
||||
- authoritative_file: `results.h5`
|
||||
- schema_version: <version>
|
||||
- root_attributes: units, coordinate_system, solver_version, feature_id, model_id
|
||||
- step_frame_identity: <step/frame naming and ordering>
|
||||
- row_identity_policy: <node_id | element_id | integration_point | component mapping>
|
||||
|
||||
| quantity | dataset_path | shape | dtype | required_attributes | location | notes |
|
||||
| --- | --- | --- | --- | --- | --- | --- |
|
||||
| displacement | /steps/<step>/frames/<frame>/field_outputs/U | <nnode, ndim> | float64 | component_names, units | nodal | |
|
||||
| reaction | /steps/<step>/frames/<frame>/field_outputs/RF | <nnode, ndim> | float64 | component_names, units | nodal | |
|
||||
| element_force | /steps/<step>/frames/<frame>/field_outputs/element_forces | <nrow, ncomp> | float64 | component_names, element_ids, location | element | feature-dependent |
|
||||
| stress | /steps/<step>/frames/<frame>/field_outputs/S | <nrow, ncomp> | float64 | component_names, element_ids, integration_points | integration_point | feature-dependent |
|
||||
|
||||
## Deterministic CSV View Schemas
|
||||
|
||||
CSV view는 HDF5 dataset에서 추출한 deterministic comparison view이며 authoritative storage가 아니다.
|
||||
|
||||
공통 규칙:
|
||||
- directory: `csv/`
|
||||
- sort_order: step, frame, id, location, component
|
||||
- numeric_format: <precision and exponent policy>
|
||||
- missing_component_policy: 0 | N/A | omitted, feature-specific
|
||||
- view_source: HDF5 dataset path를 각 파일 metadata 또는 report에 기록한다.
|
||||
|
||||
### csv/displacements.csv
|
||||
| column | type | description |
|
||||
| --- | --- | --- |
|
||||
| step | string | step name or index |
|
||||
@@ -119,7 +144,7 @@ I/O Definition Agent는 Abaqus input file subset, 내부 solver model mapping, o
|
||||
| uy | float | displacement component or 0/N/A |
|
||||
| uz | float | displacement component or 0/N/A |
|
||||
|
||||
### reactions.csv
|
||||
### csv/reactions.csv
|
||||
| column | type | description |
|
||||
| --- | --- | --- |
|
||||
| step | string | step name or index |
|
||||
@@ -129,7 +154,7 @@ I/O Definition Agent는 Abaqus input file subset, 내부 solver model mapping, o
|
||||
| rfy | float | reaction component or 0/N/A |
|
||||
| rfz | float | reaction component or 0/N/A |
|
||||
|
||||
### element_forces.csv
|
||||
### csv/element_forces.csv
|
||||
| column | type | description |
|
||||
| --- | --- | --- |
|
||||
| step | string | step name or index |
|
||||
@@ -139,7 +164,7 @@ I/O Definition Agent는 Abaqus input file subset, 내부 solver model mapping, o
|
||||
| component | string | force component name |
|
||||
| value | float | component value |
|
||||
|
||||
### stresses.csv
|
||||
### csv/stresses.csv
|
||||
| column | type | description |
|
||||
| --- | --- | --- |
|
||||
| step | string | step name or index |
|
||||
@@ -157,6 +182,8 @@ I/O Definition Agent는 Abaqus input file subset, 내부 solver model mapping, o
|
||||
- set_expansion: <policy>
|
||||
- coordinate_conventions: <policy>
|
||||
- output_quantity_availability: <policy>
|
||||
- hdf5_schema_validation: <required datasets and attributes>
|
||||
- csv_view_validation: <stable ordering and required columns>
|
||||
|
||||
## Open Issues and Downstream Handoff
|
||||
|
||||
@@ -164,10 +191,10 @@ I/O Definition Agent는 Abaqus input file subset, 내부 solver model mapping, o
|
||||
- <Abaqus input examples and reference artifact schema needs>
|
||||
|
||||
### Implementation Planning Agent
|
||||
- <parser acceptance cases, unsupported keyword diagnostics, CSV writer tests>
|
||||
- <parser acceptance cases, unsupported keyword diagnostics, HDF5 writer tests, CSV view exporter tests>
|
||||
|
||||
### Reference Verification Agent
|
||||
- <CSV schemas, ID matching rules, units, coordinate conventions, tolerance-relevant fields>
|
||||
- <HDF5 dataset paths, CSV view schemas, ID matching rules, units, coordinate conventions, tolerance-relevant fields>
|
||||
```
|
||||
|
||||
## 품질 기준
|
||||
@@ -177,4 +204,6 @@ I/O Definition Agent는 Abaqus input file subset, 내부 solver model mapping, o
|
||||
- model data와 history data의 매핑을 구분해야 한다.
|
||||
- unsupported keyword 처리 정책을 명확히 해야 한다.
|
||||
- 내부 모델 계약은 semantic fields로 작성하고 C++ class/function/API를 확정하지 않는다.
|
||||
- CSV schema는 column name, ID field, component naming, coordinate system, units, step/frame identity, quantity location을 포함해야 한다.
|
||||
- `results.h5`가 authoritative solver output임을 명시해야 한다.
|
||||
- HDF5 schema는 dataset path, dtype/shape, required attributes, ID field, component naming, coordinate system, units, step/frame identity, quantity location을 포함해야 한다.
|
||||
- CSV view schema는 column name, stable sort order, ID field, component naming, coordinate system, units, step/frame identity, quantity location을 포함해야 한다.
|
||||
|
||||
Reference in New Issue
Block a user