API#
avl_sweep is the top-level orchestrator. All other components are either called internally by it or used directly by the user afterward.
sequenceDiagram
actor U as User
participant S as avl_sweep
participant FR as avl_fileread
participant RG as avl_rungen
participant BN as avl_bin
participant FS as 📁 out_dir/
U->>S: avl_file, α, β, δ
S->>FR: avl_file
FR-->>S: AvlGeometry
S->>RG: make_run_reset()
RG-->>S: content
S->>FS: .in/reset.run
S->>RG: make_run_command() ×2
RG-->>S: cmd_text
S->>FS: .in/sweep.inp
S->>BN: cmd_text
BN->>FS: .raw/case_NNNN.st
S->>FR: st_fileread(.raw/)
FR-->>S: list[StResult]
S->>FS: results_total.csv / .json
S->>FS: results_deriv_stab.csv / .json
S->>FS: results_deriv_ctrl.csv / .json
S-->>U: list[StResult]
Sweep data flow#
Component |
Role |
Public? |
|---|---|---|
Top-level orchestrator, the |
Yes |
|
Parses AVL file formats: |
Yes |
|
Builds |
Internal |
|
Locates, verifies, and invokes the AVL Fortran binary via subprocess |
Indirect |
sequenceDiagram
actor U as User
participant FR as avl_fileread
participant FP as avl_fileplot
participant FS as 📁 out/
U->>FR: avl_file
FR-->>U: AvlGeometry
U->>FP: AvlGeometry
FP-->>U: plotly.Figure
U->>FS: fig.write_html() → .html
Geometry plot#
sequenceDiagram
actor U as User
participant FW as aero_filewrite
participant AP as aero_fileplot
participant FS as 📁 out/
U->>FW: list[StResult]
FW-->>U: AeroDatabase
U->>AP: AeroDatabase
AP-->>U: dict[str, plotly.Figure]
U->>FS: fig.write_html() → .html (per key)
Aero database + plots#
Component |
Role |
Public? |
|---|---|---|
Interactive four-view geometry plot, returns |
Yes |
|
Exports results to CSV/JSON; pivots |
Yes |
|
Interactive 3-D surface plots, returns |
Yes |
sequenceDiagram
actor U as User
participant CLI as avl_cli
participant CFG as avl_config
participant BN as avl_bin
participant S as avl_sweep
participant FR as avl_fileread
participant FP as avl_fileplot / aero_filewrite / aero_fileplot
U->>CLI: avl-aero-tables <cmd> [args]
alt verify
CLI->>BN: verify()
BN-->>CLI: binary path
else sweep <yml>
CLI->>CFG: load_config(yml)
CFG-->>CLI: ProjectConfig
CLI->>S: run(avl_file, α, β, δ, out_dir)
S-->>CLI: list[StResult]
else plot geometry <yml>
CLI->>CFG: load_config(yml)
CFG-->>CLI: ProjectConfig
CLI->>FR: avl_fileread(avl_file)
FR-->>CLI: AvlGeometry
CLI->>FP: avl_fileplot(AvlGeometry)
FP-->>CLI: Figure
else plot totals / stab-deriv / ctrl-deriv <runs_dir>
CLI->>FR: st_fileread(.raw/)
FR-->>CLI: list[StResult]
CLI->>FP: aero_filewrite(results)
FP-->>CLI: AeroDatabase
CLI->>FP: plot_totals / plot_stab_derivs / plot_ctrl_derivs(db)
FP-->>CLI: dict[str, Figure]
end
CLI-->>U: output / status
CLI#
Component |
Role |
Public? |
|---|---|---|
|
CLI only |
|
YAML project-file schema ( |
CLI only |