pub fn femm_as_func(
model: FemmModel,
vars: Vec<Symbol>,
query: OutputQuery,
) -> FuncExpand description
Wraps a model as a sim-numbers Func of the named variables.
The returned function solves the model on call and reduces it to query;
its metadata carries a FemmFuncPayload and an adjoint differentiator
hint so sensitivity analysis can recover the model.
ยงExamples
use sim_kernel::Symbol;
use sim_lib_femm_fixtures::parallel_plate_capacitor;
use sim_lib_femm_function::{femm_as_func, OutputQuery};
use sim_lib_femm_post::QuantitySpec;
let vars = vec![Symbol::new("gap-mm")];
let func = femm_as_func(
parallel_plate_capacitor(),
vars.clone(),
OutputQuery::Quantity(QuantitySpec::Energy { region: None }),
);
assert_eq!(func.vars, vars);