floris.core.solver#

Functions

calculate_area_overlap(wake_velocities, ...)

compute wake overlap based on the number of points that are not freestream velocity, i.e. affected by the wake.

cc_solver(farm, flow_field, grid, model_manager)

rtype:

None

empirical_gauss_solver(farm, flow_field, ...)

Algorithm: For each turbine, calculate its effect on every downstream turbine.

full_flow_cc_solver(farm, flow_field, ...)

rtype:

None

full_flow_empirical_gauss_solver(farm, ...)

rtype:

None

full_flow_sequential_solver(farm, ...)

rtype:

None

full_flow_turbopark_solver(farm, flow_field, ...)

rtype:

None

sequential_solver(farm, flow_field, grid, ...)

rtype:

None

turbopark_solver(farm, flow_field, grid, ...)

rtype:

None

floris.core.solver.calculate_area_overlap(wake_velocities, freestream_velocities, y_ngrid, z_ngrid)[source]#

compute wake overlap based on the number of points that are not freestream velocity, i.e. affected by the wake

floris.core.solver.sequential_solver(farm, flow_field, grid, model_manager)[source]#
Return type:

None

Parameters:
floris.core.solver.full_flow_sequential_solver(farm, flow_field, flow_field_grid, model_manager)[source]#
Return type:

None

Parameters:
floris.core.solver.cc_solver(farm, flow_field, grid, model_manager)[source]#
Return type:

None

Parameters:
floris.core.solver.full_flow_cc_solver(farm, flow_field, flow_field_grid, model_manager)[source]#
Return type:

None

Parameters:
floris.core.solver.turbopark_solver(farm, flow_field, grid, model_manager)[source]#
Return type:

None

Parameters:
floris.core.solver.full_flow_turbopark_solver(farm, flow_field, flow_field_grid, model_manager)[source]#
Return type:

None

Parameters:
floris.core.solver.empirical_gauss_solver(farm, flow_field, grid, model_manager)[source]#

Algorithm: For each turbine, calculate its effect on every downstream turbine. For the current turbine, we are calculating the deficit that it adds to downstream turbines. Integrate this into the main data structure. Move on to the next turbine.

Return type:

ndarray[Any, dtype[float64]]

Parameters:
Args:

farm (Farm) flow_field (FlowField) grid (TurbineGrid) model_manager (WakeModelManager)

Raises:

NotImplementedError: Raised if secondary steering is enabled with the EmGauss model. NotImplementedError: Raised if transverse velocities is enabled with the EmGauss model.

Returns:

NDArrayFloat: wake induced mixing field primarily for use in the full-flow EmGauss solver

floris.core.solver.full_flow_empirical_gauss_solver(farm, flow_field, flow_field_grid, model_manager)[source]#
Return type:

None

Parameters: