Installing py-vibracore
To install pyvibracore
, we strongly recommend using Python Package Index (PyPI).
You can install pyvibracore
with:
pip install py-vibracore[notebook]
We installed the notebook variant of pyvibracore
which include additional dependencies,
and thereby enable additional functionality.
Risk of damage during construction [SBR-A]
VibraCore is an API service based on a Python library that automates the risk management of building damage during vibration works, such as the installation of sheet piles or driven piles. Based on the attributes of the nearby buildings the failure vibration velocity is calculated (according to SBR A). If the check fails the building has a unacceptable risk (according to SBR A) of being damaged by the installation of the piles or sheet piles.
Building properties CUR166 or PrePal + SBR-A
Data (vibration) source
Soil properties data
A jupyter notebook that guides you through this steps can be found at /notebooks/NBxxxxx_SBRA.ipynb
Impact force determination [CUR166]
Based on the soil profile (GEF file) the maximum impact force is calculated (according to CUR 166 3rd edition). This is used to predict the maximum vibration velocity.
Cone Penetration Test (CPT)
Soil properties (classification)
Pile properties and installation method
A jupyter notebook that guides you through this steps can be found at notebooks/NBxxxxx_impact_force.ipynb
Guided usage
Getting started with pyvibracore is easy done by importing the pyvibracore
library:
In [1]: import pyvibracore
or any equivalent import
statement.
Create payload
If you’re not so comfortable with creating your own schema’s the SDK provides usefully
functions to creates a dictionary with the payload content for the VibraCore endpoints.
You can find the function at pyvibracore.input
. Please read the reference page for more
information:
from pyvibracore.input.vibration_properties import (
create_cur166_payload, get_buildings_geodataframe
)
buildings = get_buildings_geodataframe(
west, south, east, north
)
location = Point[[x, y]]
payload = create_cur166_payload(
buildings,
location,
force=500
)
Call endpoint
With the created payload and nuclei.client
it is possible to create a request.
SDK provides functions to assist with this process:
from nuclei.client import NucleiClient
from pyvibracore import api
client = NucleiClient()
response = api.get_cur166_calculation(client, payload=multi_vibration_payload)
Create results
To help the user with generating tables and plots based on the response of the API call the SDK provides classes that store the data in a structured way.
from pyvibracore.results.vibration_result import VibrationResults
results = VibrationResults.from_api_response(response)