Skip to content

No test runs generate_airfoils with a delta_range over a wrapped slice, so the per-deflection .dat files are unchecked #296

Description

@1-Bort-1

#294 pins that generate_airfoils fits the contour it is handed, but only for the delta=0 contour: its test leaves delta_range unset and compares 1.dat against the direct LeastSquaresFit of the handed contour. Everything written per deflection — airfoils/{id}_d<delta>.dat, and the _cp/_cf node tables that share their geometry — has no test on its geometry at all.

The gap matters because the delta files inherit the base fit rather than recomputing it: generate_airfoil_aero takes kulfan_to_coordinates(base) and runs deform_section per delta (rotate about crease_frac, re-shrink_wrap at clearance=0, refit). On the SK100 the nine blown-up sections carried their deflected files with them, and 10_d10.dat is the case worth knowing: it looks normalised because a large chord rescaled it, while its lower surface is a constant min_clearance/chord. The existing coverage would not catch that — test/airfoil_aero/test_airfoil_aero.jl checks a flap's extrema(x) against [0, 1] within 0.01, which a rescaled blowup passes.

What is wanted:

  • A generate_airfoils run with a delta_range spanning both signs, over a contour that has been shrink-wrapped first (the adapters' actual input shape — test/airfoil_aero/data/test_airfoil.dat wrapped, as Fit the contour generate_airfoils is handed, not a second wrap of it #294's test does, needs no new fixture), asserting every written _d<delta>.dat against the deflected geometry it should be: thickness and chordwise extent of the same order as the base section, and the delta=0 file unchanged from the existing check.
  • Thickness as the measure rather than the bounding box, and the flap assertions in the deform_section testset moved onto it too, so a section rescaled by its chord cannot pass.
  • Ideally one case that would have failed before Fit the contour generate_airfoils is handed, not a second wrap of it #294, i.e. driven from a wrapped contour rather than an analytic Kulfan section, so the test is a regression on the double wrap across the whole delta grid and not only at zero.

The unregularised fit underneath is #295 and not in scope here; this is coverage for the route as it now stands.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions