Package 'tbsa'

Title: Turbine Blade Strike Analysis
Description: R implementation of spreadsheet model provided by the USFWS for performing leading-edge blade strike analysis of hydropower turbines on fish.
Authors: Travis Hinkelman
Maintainer: Travis Hinkelman <[email protected]>
License: MIT + file LICENSE
Version: 0.1.0
Built: 2025-02-06 03:25:05 UTC
Source: https://github.com/EnvironmentalScienceAssociates/tbsa

Help Index


Discharge coefficient

Description

Non-dimensional discharge coefficient term incorporated into strike equations

Usage

discharge_coef(Q, D, rpm)

Arguments

Q

Turbine discharge (cfs)

D

Nominal diameter (ft) of runner

rpm

Runner revolutions per minute


Energy coefficient

Description

Non-dimensional energy coefficient term incorporated into strike equations

Usage

energy_coef(H, D, rpm)

Arguments

H

Net head on the turbine (ft)

D

Nominal diameter (ft) of runner

rpm

Runner revolutions per minute


Francis alpha

Description

Angle (rad) to tangential of absolute flow upstream of runner

Usage

francis_alpha(Q, H, D, D1, D2, rpm, eta, opt, xi, B)

Arguments

Q

Turbine discharge (cfs)

H

Net head on the turbine (ft)

D

Nominal diameter (ft) of runner

D1

Diameter (ft) at the intake of the runner

D2

Diameter (ft) at the outlet of the runner

rpm

Runner revolutions per minute

eta

Turbine efficiency

opt

Ratio of turbine discharge at best efficiency to hydraulic capacity

xi

Ratio between Q with no exit swirl and Qopt

B

Runner height (ft) at inlet


Francis beta

Description

Relative flow angle (rad) at turbine discharge; used in strike equations

Usage

francis_beta(Q, D, D1, D2, rpm, opt, xi)

Arguments

Q

Turbine discharge (cfs)

D

Nominal diameter (ft) of runner

D1

Diameter (ft) at the intake of the runner

D2

Diameter (ft) at the outlet of the runner

rpm

Runner revolutions per minute

opt

Ratio of turbine discharge at best efficiency to hydraulic capacity

xi

Ratio between Q with no exit swirl and Qopt


Francis blade strike probability

Description

Calculates leading-edge blade strike probability from a Francis turbine

Usage

francis_strike(Q, H, D, D1, D2, rpm, eta, opt, xi, B, N, L, lambda = 0.2)

Arguments

Q

Turbine discharge (cfs)

H

Net head on the turbine (ft)

D

Nominal diameter (ft) of runner

D1

Diameter (ft) at the intake of the runner

D2

Diameter (ft) at the outlet of the runner

rpm

Runner revolutions per minute

eta

Turbine efficiency

opt

Ratio of turbine discharge at best efficiency to hydraulic capacity

xi

Ratio between Q with no exit swirl and Qopt

B

Runner height (ft) at inlet

N

Number of blades

L

Fish length (ft)

lambda

Actual mortality correlation; influenced by many factors including unit type and fish species


Kaplan alpha

Description

Angle (rad) to tangential of absolute flow upstream of runner

Usage

kaplan_alpha(Q, H, D, rpm, eta, radius_ratio)

Arguments

Q

Turbine discharge (cfs)

H

Net head on the turbine (ft)

D

Nominal diameter (ft) of runner

rpm

Runner revolutions per minute

eta

Turbine efficiency

radius_ratio

r/R where R = 0.5 * D; passage near hub (0.5), mid-blade (0.75), blade tip (1)


Kaplan blade strike probability

Description

Calculates leading-edge blade strike probability from Kaplan turbine

Usage

kaplan_strike(Q, H, D, rpm, eta, N, L, lambda = 0.2, radius_ratio = 0.75)

Arguments

Q

Turbine discharge (cfs)

H

Net head on the turbine (ft)

D

Nominal diameter (ft) of runner

rpm

Runner revolutions per minute

eta

Turbine efficiency

N

Number of blades

L

Fish length (ft)

lambda

Actual mortality correlation; influenced by many factors including unit type and fish species

radius_ratio

r/R where R = 0.5 * D; passage near hub (0.5), mid-blade (0.75), blade tip (1)


Propeller alpha

Description

Angle (rad) to tangential of absolute flow upstream of runner

Usage

propeller_alpha(Q, H, D, rpm, eta, opt, radius_ratio)

Arguments

Q

Turbine discharge (cfs)

H

Net head on the turbine (ft)

D

Nominal diameter (ft) of runner

rpm

Runner revolutions per minute

eta

Turbine efficiency

opt

Ratio of turbine discharge at best efficiency to hydraulic capacity

radius_ratio

r/R where R = 0.5 * D; passage near hub (0.5), mid-blade (0.75), blade tip (1)


Propeller beta

Description

Relative flow angle (rad) at turbine discharge; used in strike equations

Usage

propeller_beta(Q, D, rpm, opt, radius_ratio)

Arguments

Q

Turbine discharge (cfs)

D

Nominal diameter (ft) of runner

rpm

Runner revolutions per minute

opt

Ratio of turbine discharge at best efficiency to hydraulic capacity

radius_ratio

r/R where R = 0.5 * D; passage near hub (0.5), mid-blade (0.75), blade tip (1)


Propeller blade strike probability

Description

Calculates leading-edge blade strike probability from a propeller turbine

Usage

propeller_strike(
  Q,
  H,
  D,
  rpm,
  eta,
  opt,
  N,
  L,
  lambda = 0.2,
  radius_ratio = 0.75
)

Arguments

Q

Turbine discharge (cfs)

H

Net head on the turbine (ft)

D

Nominal diameter (ft) of runner

rpm

Runner revolutions per minute

eta

Turbine efficiency

opt

Ratio of turbine discharge at best efficiency to hydraulic capacity

N

Number of blades

L

Fish length (ft)

lambda

Actual mortality correlation; influenced by many factors including unit type and fish species

radius_ratio

r/R where R = 0.5 * D; passage near hub (0.5), mid-blade (0.75), blade tip (1)


Random route selection

Description

Randomly select route for a fish through a project from a multinomial distribution based on routing probabilities.

Usage

rand_route(fish_num, route_names, route_probs)

Arguments

fish_num

Number of fish in the simulation

route_names

Vector of route names through a project

route_probs

Vector of probabilities that fish enters each route; should sum to one.


Rotational speed

Description

Rotational speed

Usage

rotational_speed(rpm)

Arguments

rpm

Runner revolutions per minute


Example Route Data

Description

Example route data used as input to the tbsa function. Includes all four route types and corresponds to the "Francis, Kaplan and propeller w spill, gates and bypass" example in the spreadsheet model.

Usage

route_data_ex

Format

A data frame with 9 rows and 16 variables:

route_name

Unique name of a route through a project

route_prob

Probability that a fish enters each route; should sum to one.

route_type

Route type should be one of Francis, Kaplan, propeller, or bypass.

D

Nominal diameter (ft) of runner

N

Number of blades

B

Runner height (ft) at inlet

Q

Turbine discharge (cfs)

opt

Ratio of turbine discharge at best efficiency to hydraulic capacity

H

Net head on the turbine (ft)

rpm

Runner revolutions per minute

xi

Ratio between Q with no exit swirl and Qopt

lambda

Actual mortality correlation; influenced by many factors including unit type and fish species

D1

Diameter (ft) at the intake of the runner

D2

Diameter (ft) at the outlet of the runner

eta

Turbine efficiency

est_mortality

Estimated mortality for routes without turbines, e.g., gates, spillways, fishways, etc.


Turbine blade strike analysis

Description

Runs stochastic simulation of turbine blade strike analysis based on input parameters in route_data

Usage

tbsa(fish_num, length_mean, length_sd, route_data)

Arguments

fish_num

Number of fish in the simulation

length_mean

Mean fish length (ft)

length_sd

Standard deviation of fish length (ft)

route_data

Data frame with input parameters for each route (see route_data_ex for example)

Examples

tbsa(10, 1.5, 0.25, route_data_ex)