# bearing.phi_from_toe_bearing()

Friction angle whose toe bearing on `sigma_v` equals `q_needed`.

Usage

[Source](https://github.com/lornearnold/driven-pile/blob/main/src/driven_pile/bearing.py#L90-L120)

``` python
bearing.phi_from_toe_bearing(
    q_needed,
    sigma_v,
    options,
)
```

## Parameters

`q_needed: float`  
Required unit toe resistance, ksf.

`sigma_v: float`  
Vertical effective stress at the toe, ksf.

`options: ModelOptions`  
Supplies the friction angle bounds and rigidity parameters.

## Returns

`phi: float`  
Friction angle, deg, held at a bound when the requirement lies outside the attainable range; NaN when `q_needed` is not finite.

`reason: str`  
One of the reason codes in `driven_pile.constants`.
