Skip to content

Evaluators

Evaluators map design variables to engineering outputs:

outputs = evaluator(x, conditions=None)

The output should be a dictionary of tensors:

{
    "CL": cl,
    "CD": cd,
    "CM": cm,
}

Future domains can expose other keys such as:

{
    "stress": stress,
    "displacement": displacement,
    "mass": mass,
}

Evaluator Types

  • Dummy evaluators for smoke tests and examples.
  • Neural surrogates such as NeuralFoil or AeroTransformer.
  • External solvers such as XFoil, ADflow, OpenFOAM, or FEM codes.

Optional Dependencies

Evaluator modules should fail gracefully when optional dependencies or checkpoints are missing. Public examples should have a lightweight path that does not require large model artifacts.