fields.mixins.components.FieldComponentCoreMixin.from_function#
- classmethod FieldComponentCoreMixin.from_function(func: Callable[[...], Any], grid: GridBase, axes: Sequence[str], *args, result_shape: Sequence[int] | None = None, buffer_class: Type[BufferBase] | None = None, buffer_registry: BufferRegistry | None = None, buffer_kwargs: Dict[str, Any] | None = None, **kwargs) _SupFCCore [source]#
Construct a
FieldComponent
by evaluating a function on the grid.This method evaluates a coordinate-dependent function func over a physical coordinate mesh generated from grid along the specified axes. It is useful for initializing field data from analytic expressions.
- Parameters:
func (
callable
) – A function that takes coordinate arrays (one per axis) and returns an array of values with shape (*grid_shape, *result_shape), matching the evaluated field.grid (
GridBase
) – The grid over which to evaluate the function.axes (
list
ofstr
) – Coordinate axes along which the field is defined.*args – Additional arguments forwarded to the buffer constructor (e.g., dtype).
result_shape (
tuple
ofint
, optional) – Shape of trailing element-wise structure (e.g., for vectors/tensors). Defaults to scalar ().buffer_class (
str
orBufferBase
, optional) – The buffer backend used to hold data.buffer_registry (
BufferRegistry
, optional) – Registry used to resolve buffer class strings.buffer_kwargs (
dict
, optional) – Extra keyword arguments passed to the buffer constructor (e.g., units).**kwargs – Additional keyword arguments forwarded to the function func.
- Returns:
A new field component with data populated from func.
- Return type:
FieldComponent
- Raises:
ValueError – If the output shape of func does not match the expected field shape.