Skip to content

Index

subsurfaceio.seismic_site_class_averaging

Seismic site class averaging API.

Average shear velocity, blow count, or undrained strength over a profile:

from subsurfaceio.seismic_site_class_averaging import SeismicSiteClassAveraging

SeismicSiteClassAveraging(metadata=metadata, data=profile).calculate()

Classes:

Name Description
AverageBlowCountResults

Averaged SPT blow-count results.

AverageShearVelocityResults

Averaged shear-velocity and optional site-period results.

AverageUndrainedShearStrengthResults

Averaged undrained shear-strength results.

SeismicSiteClassAveraging

IBC special averaging of Vs, SPT N, or undrained strength.

SeismicSiteClassAveragingMetadata

Averaging window and variable selection.

SeismicSiteClassIndirectItem

Depth profile row for site-class averaging.

Attributes:

Name Type Description
AVERAGING

AVERAGING module-attribute

AVERAGING = {
    "shear_velocity": AverageShearVelocityResults,
    "blow_count": AverageBlowCountResults,
    "undrained_shear_strength": AverageUndrainedShearStrengthResults,
}

AverageBlowCountResults pydantic-model

Bases: BaseModel

Averaged SPT blow-count results.

Fields:

average_blow_count pydantic-field

average_blow_count: float | None = None

variable pydantic-field

variable: Literal['blow_count']

AverageShearVelocityResults pydantic-model

Bases: BaseModel

Averaged shear-velocity and optional site-period results.

Fields:

average_shear_velocity pydantic-field

average_shear_velocity: float | None = None

site_period pydantic-field

site_period: float | None = None

variable pydantic-field

variable: Literal['shear_velocity']

AverageUndrainedShearStrengthResults pydantic-model

Bases: BaseModel

Averaged undrained shear-strength results.

Fields:

average_undrained_shear_strength pydantic-field

average_undrained_shear_strength: float | None = None

variable pydantic-field

variable: Literal['undrained_shear_strength']

SeismicSiteClassAveraging pydantic-model

Bases: Model

IBC special averaging of Vs, SPT N, or undrained strength.

References
  • boore2004estimating
  • dobry2000new

Fields:

data pydantic-field

data: list[SeismicSiteClassIndirectItem]

metadata pydantic-field

metadata: SeismicSiteClassAveragingMetadata

results pydantic-field

results: (
    AverageShearVelocityResults
    | AverageBlowCountResults
    | AverageUndrainedShearStrengthResults
    | None
) = None

Calculation results

calculate

calculate() -> Self

Run the calculation and store results.

Returns:

Type Description
Self

self with results populated.

get_data_figure

get_data_figure() -> plotly.graph_objects.Figure

Plot values to average versus depth.

Returns:

Type Description
Figure

Plotted Plotly figure.

SeismicSiteClassAveragingMetadata pydantic-model

Bases: BaseModel

Averaging window and variable selection.

Fields:

average_bottom_depth pydantic-field

average_bottom_depth: NullableFloat = 30.0

average_top_depth pydantic-field

average_top_depth: NullableFloat = 0.0

shallow_velocity_extrapolation_method pydantic-field

shallow_velocity_extrapolation_method: (
    ShallowVelocityExtrapolationMethod | None
) = None

site_period_method pydantic-field

site_period_method: (
    Literal["weighted average", "sum of periods"] | None
) = None

Shear velocity measured ABOVE halfspace

variable pydantic-field

variable: Literal[
    "shear_velocity",
    "blow_count",
    "undrained_shear_strength",
] = "shear_velocity"

Variable

SeismicSiteClassIndirectItem pydantic-model

Bases: BaseModel

Depth profile row for site-class averaging.

Fields:

depth pydantic-field

depth: NullableFloat = None

values_to_average pydantic-field

values_to_average: NullableFloat = None