Skip to content

ptfkit.rawls1982

ptfkit.rawls1982

Rawls et al. (1982), water-retention regressions for soils across the USA.

Reference

Rawls, W. J., Brakensiek, D. L., & Saxton, K. E. (1982). Estimation of soil water properties. Transactions of the ASAE, 25, 1316-1320.

Territory

Agricultural soils from 32 states of the USA

Dataset

1,323 soils with about 5,350 horizons; regression equations used 2,541 horizons.

CLASS DESCRIPTION
Rawls1982PTFResult

Results returned by the matching PTF.

FUNCTION DESCRIPTION
calc_full_wrc_rawls1982

Estimate a twelve-point water-retention curve using theta_33 and theta_1500.

calc_theta_1500_rawls1982

Estimate volumetric water content at -1500 kPa.

calc_theta_33_rawls1982

Estimate volumetric water content at -33 kPa using measured or estimated theta_1500.

Rawls1982PTFResult

Bases: NamedTuple, Generic[T]

Results returned by the matching PTF.

ATTRIBUTE DESCRIPTION
theta_4

Volumetric water content at -4 kPa. (cm^3/cm^3)

TYPE: T

theta_7

Volumetric water content at -7 kPa. (cm^3/cm^3)

TYPE: T

theta_10

Volumetric water content at -10 kPa. (cm^3/cm^3)

TYPE: T

theta_20

Volumetric water content at -20 kPa. (cm^3/cm^3)

TYPE: T

theta_33

Input volumetric water content at -33 kPa. (cm^3/cm^3)

TYPE: T

theta_60

Volumetric water content at -60 kPa. (cm^3/cm^3)

TYPE: T

theta_100

Volumetric water content at -100 kPa. (cm^3/cm^3)

TYPE: T

theta_200

Volumetric water content at -200 kPa. (cm^3/cm^3)

TYPE: T

theta_400

Volumetric water content at -400 kPa. (cm^3/cm^3)

TYPE: T

theta_700

Volumetric water content at -700 kPa. (cm^3/cm^3)

TYPE: T

theta_1000

Volumetric water content at -1000 kPa. (cm^3/cm^3)

TYPE: T

theta_1500

Input volumetric water content at -1500 kPa. (cm^3/cm^3)

TYPE: T

Source code in ptfkit/rawls1982.py
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
class Rawls1982PTFResult(NamedTuple, Generic[T]):
    """Results returned by the matching PTF.

    Attributes:
        theta_4: Volumetric water content at -4 kPa. (cm^3/cm^3)
        theta_7: Volumetric water content at -7 kPa. (cm^3/cm^3)
        theta_10: Volumetric water content at -10 kPa. (cm^3/cm^3)
        theta_20: Volumetric water content at -20 kPa. (cm^3/cm^3)
        theta_33: Input volumetric water content at -33 kPa. (cm^3/cm^3)
        theta_60: Volumetric water content at -60 kPa. (cm^3/cm^3)
        theta_100: Volumetric water content at -100 kPa. (cm^3/cm^3)
        theta_200: Volumetric water content at -200 kPa. (cm^3/cm^3)
        theta_400: Volumetric water content at -400 kPa. (cm^3/cm^3)
        theta_700: Volumetric water content at -700 kPa. (cm^3/cm^3)
        theta_1000: Volumetric water content at -1000 kPa. (cm^3/cm^3)
        theta_1500: Input volumetric water content at -1500 kPa. (cm^3/cm^3)

    """

    theta_4: T
    theta_7: T
    theta_10: T
    theta_20: T
    theta_33: T
    theta_60: T
    theta_100: T
    theta_200: T
    theta_400: T
    theta_700: T
    theta_1000: T
    theta_1500: T

calc_full_wrc_rawls1982

calc_full_wrc_rawls1982(*, sand: float, organic_matter: float, bulk_density: float, theta_33: float, theta_1500: float) -> Rawls1982PTFResult[floating]
calc_full_wrc_rawls1982(*, sand: ArrayLike, organic_matter: ArrayLike, bulk_density: ArrayLike, theta_33: ArrayLike, theta_1500: ArrayLike, out: Rawls1982PTFResult[NDArray[floating]] | None = None) -> Rawls1982PTFResult[NDArray[floating]]

Estimate a twelve-point water-retention curve using theta_33 and theta_1500.

PARAMETER DESCRIPTION
sand

Sand content. (%)

TYPE: float | ArrayLike

organic_matter

Organic matter content. (%)

TYPE: float | ArrayLike

bulk_density

Bulk density. (g/cm^3)

TYPE: float | ArrayLike

theta_33

Measured or estimated volumetric water content at -33 kPa. (cm^3/cm^3)

TYPE: float | ArrayLike

theta_1500

Measured or estimated volumetric water content at -1500 kPa. (cm^3/cm^3)

TYPE: float | ArrayLike

out

Optional output arrays for in-place calculation.

TYPE: Rawls1982PTFResult[NDArray[floating]] | None DEFAULT: None

RETURNS DESCRIPTION
Rawls1982PTFResult

Results grouped by result attributes.

TYPE: Rawls1982PTFResult[floating] | Rawls1982PTFResult[NDArray[floating]]

Models

\(h(\theta)\): Twelve point water-retention curve

Notes

Prediction target: Volumetric water contents from -4 to -1500 kPa. The source offers three regression levels; this function uses measured theta_33 and theta_1500 for the intermediate points.

Warning

The source value 0.8888 is retained literally for the theta_7 intercept.

Source code in ptfkit/rawls1982.py
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
def calc_full_wrc_rawls1982(
    *,
    sand: float | ArrayLike,
    organic_matter: float | ArrayLike,
    bulk_density: float | ArrayLike,
    theta_33: float | ArrayLike,
    theta_1500: float | ArrayLike,
    out: Rawls1982PTFResult[NDArray[floating]] | None = None,
) -> Rawls1982PTFResult[floating] | Rawls1982PTFResult[NDArray[floating]]:
    r"""Estimate a twelve-point water-retention curve using theta_33 and theta_1500.

    Arguments:
        sand: Sand content. (%)
        organic_matter: Organic matter content. (%)
        bulk_density: Bulk density. (g/cm^3)
        theta_33: Measured or estimated volumetric water content at -33 kPa. (cm^3/cm^3)
        theta_1500: Measured or estimated volumetric water content at -1500 kPa. (cm^3/cm^3)
        out: Optional output arrays for in-place calculation.

    Returns:
        Rawls1982PTFResult: Results grouped by result attributes.

    Models:
        $h(\theta)$: Twelve point water-retention curve

    Notes:
        Prediction target: Volumetric water contents from -4 to -1500 kPa.
        The source offers three regression levels; this function uses measured theta_33 and
            theta_1500 for the intermediate points.

    Warning:
        The source value 0.8888 is retained literally for the theta_7 intercept.

    """
    values = _call(
        _calc_ptf_rawls1982_full_wrc,
        sand,
        organic_matter,
        bulk_density,
        theta_33,
        theta_1500,
        out=out,
    )

    return Rawls1982PTFResult(*values)

calc_theta_1500_rawls1982

calc_theta_1500_rawls1982(*, clay: float, organic_matter: float) -> floating
calc_theta_1500_rawls1982(*, clay: ArrayLike, organic_matter: ArrayLike, out: NDArray[floating] | None = None) -> NDArray[floating]

Estimate volumetric water content at -1500 kPa.

PARAMETER DESCRIPTION
clay

Clay content. (%)

TYPE: float | ArrayLike

organic_matter

Organic matter content. (%)

TYPE: float | ArrayLike

out

Optional output arrays for in-place calculation.

TYPE: NDArray[floating] | None DEFAULT: None

RETURNS DESCRIPTION
theta_1500

Volumetric soil water content at -1500 kPa. (cm^3/cm^3)

TYPE: floating | NDArray[floating]

Models

\(h(\theta)\): Point estimate at -1500 kPa

Notes

Prediction target: Volumetric soil water content at -1500 kPa.

Source code in ptfkit/rawls1982.py
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
def calc_theta_1500_rawls1982(
    *,
    clay: float | ArrayLike,
    organic_matter: float | ArrayLike,
    out: NDArray[floating] | None = None,
) -> floating | NDArray[floating]:
    r"""Estimate volumetric water content at -1500 kPa.

    Arguments:
        clay: Clay content. (%)
        organic_matter: Organic matter content. (%)
        out: Optional output arrays for in-place calculation.

    Returns:
        theta_1500: Volumetric soil water content at -1500 kPa. (cm^3/cm^3)

    Models:
        $h(\theta)$: Point estimate at -1500 kPa

    Notes:
        Prediction target: Volumetric soil water content at -1500 kPa.

    """
    return _call(
        _calc_ptf_rawls1982_theta_1500,
        clay,
        organic_matter,
        out=out,
    )

calc_theta_33_rawls1982

calc_theta_33_rawls1982(*, sand: float, organic_matter: float, theta_1500: float) -> floating
calc_theta_33_rawls1982(*, sand: ArrayLike, organic_matter: ArrayLike, theta_1500: ArrayLike, out: NDArray[floating] | None = None) -> NDArray[floating]

Estimate volumetric water content at -33 kPa using measured or estimated theta_1500.

PARAMETER DESCRIPTION
sand

Sand content. (%)

TYPE: float | ArrayLike

organic_matter

Organic matter content. (%)

TYPE: float | ArrayLike

theta_1500

Measured or estimated volumetric water content at -1500 kPa. (cm^3/cm^3)

TYPE: float | ArrayLike

out

Optional output arrays for in-place calculation.

TYPE: NDArray[floating] | None DEFAULT: None

RETURNS DESCRIPTION
theta_33

Volumetric soil water content at -33 kPa. (cm^3/cm^3)

TYPE: floating | NDArray[floating]

Models

\(h(\theta)\): Point estimate at -33 kPa

Notes

Prediction target: Volumetric soil water content at -33 kPa.

Source code in ptfkit/rawls1982.py
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
def calc_theta_33_rawls1982(
    *,
    sand: float | ArrayLike,
    organic_matter: float | ArrayLike,
    theta_1500: float | ArrayLike,
    out: NDArray[floating] | None = None,
) -> floating | NDArray[floating]:
    r"""Estimate volumetric water content at -33 kPa using measured or estimated theta_1500.

    Arguments:
        sand: Sand content. (%)
        organic_matter: Organic matter content. (%)
        theta_1500: Measured or estimated volumetric water content at -1500 kPa. (cm^3/cm^3)
        out: Optional output arrays for in-place calculation.

    Returns:
        theta_33: Volumetric soil water content at -33 kPa. (cm^3/cm^3)

    Models:
        $h(\theta)$: Point estimate at -33 kPa

    Notes:
        Prediction target: Volumetric soil water content at -33 kPa.

    """
    return _call(
        _calc_ptf_rawls1982_theta_33,
        sand,
        organic_matter,
        theta_1500,
        out=out,
    )