You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Write and read polar tables as Arrow when table_format is :arrow #371
Write and read polar tables as Arrow when table_format is :arrow
Today table_format (#257) only covers the per-node Cp/cf tables; every polar still goes out as CSV through write_polar_csv / write_polar_matrix_csv (src/airfoil_aero/airfoil_solvers/common.jl, src/airfoil_aero/airfoil_io.jl) and comes back through the line-based load_polar_data (src/yaml_geometry.jl:77). BeyondTheSim runs SK100 with table_format: arrow and still gets CSV polars.
Make the polars follow table_format by reusing the node-table I/O, not by adding a second Arrow path:
read_node_table / write_node_rows (src/section_aero.jl:151, :186) already pick CSV or Arrow from the file suffix and take exactly the (alpha, delta, values) row form a POLAR_MATRICES table is, with values = [Cl Cd Cm]. Extend them (e.g. named value columns, so a polar keeps its Cl/Cd/Cm header) rather than writing polar-specific Arrow code; the polar writers and load_polar_data go through them.
convert_node_table / migrate_node_tables (src/obj_adapter/obj_to_yaml.jl:115) should migrate a cached dataset's polars too, so switching format rewrites them instead of re-running NeuralFoil.
obj_to_yaml / surfplan_to_aero_yaml write the polar path with the matching suffix into the geometry YAML; existing CSV polar datasets keep loading untouched.
Cover POLAR_VECTORS as well, or say on the card why not.
Builds on #369 (the 16-significant-digit csv_fields row writer on the same functions): agent stack 369 before the first push, and fold csv_fields into the shared CSV branch rather than keeping two row formatters.
Folding both finds into #372 as asked: renaming write_polar_csv / write_polar_matrix_csv to write_polar / write_polar_matrix and the YAML key csv_file_path to polar_file_path (old key still read), and giving resolve_aero_geometry / resolve_airfoil a table_format so the neuralfoil route writes .arrow too. Closes #373 with it.
Activity
1-Bort-1 commentedon Sep 21, 2026
Folding both finds into #372 as asked: renaming write_polar_csv / write_polar_matrix_csv to write_polar / write_polar_matrix and the YAML key csv_file_path to polar_file_path (old key still read), and giving resolve_aero_geometry / resolve_airfoil a table_format so the neuralfoil route writes .arrow too. Closes #373 with it.
12 remaining items