buffalo_panel.formulations.LumpedVortexFormulation

class buffalo_panel.formulations.LumpedVortexFormulation(geometry, registry, backend='python', body_reference=None)[source]

Solve a thin-body lumped-vortex formulation.

Methods

build_body_vortex_family()

Build the point-vortex family for the body panels.

solve(freestream[, point_particles])

Assemble, solve, and recover surface results for one freestream.

Attributes

geometry

Thin-body geometry used in the lumped-vortex solver.

registry

Registry of computational kernels to use in the solver.

backend

Specific computational kernel backend to use.

body_reference

Reference quantities for integrated coefficient recovery.

geometry: ThinBodyLineGeometry2D

Thin-body geometry used in the lumped-vortex solver.

registry: KernelRegistry

Registry of computational kernels to use in the solver.

backend: str

Specific computational kernel backend to use.

body_reference: BodyReference2D | None

Reference quantities for integrated coefficient recovery.

build_body_vortex_family()[source]

Build the point-vortex family for the body panels.

Returns:

Body point-vortex assembly for this formulation.

Return type:

ElementFamily

solve(freestream, point_particles=())[source]

Assemble, solve, and recover surface results for one freestream.

Parameters:
  • freestream (Freestream2D) – Freestream conditions for this solution.

  • point_particles (tuple[PointElementParticle2D, ], optional) – Prescribed point particles whose induced fields contribute known forcing to the body boundary condition and to recovered flow fields.

Returns:

  • FloatArray – Raw solution from the system of equations.

  • PanelSolution2D – Processed results information from solution.

Return type:

tuple[TypeAliasForwardRef(’buffalo_panel.type_aliases.FloatArray’), PanelSolution2D]