PCPT processing class¶
- class groundhog.siteinvestigation.insitutests.pcpt_processing.PCPTProcessing(title, waterunitweight=10.25)[source]¶
The PCPTProcessing class implements methods for reading, processing and presentation of PCPT data. Common correlations are also encoded.
- __init__(title, waterunitweight=10.25)[source]¶
Initialises a PCPTProcessing object based on a title. Optionally, a geographical position can be defined. A dictionary for dumping unstructured data (
additionaldata
) is also available.An empty dataframe (``.data`) is created for storing the PCPT data`
- Parameters:
title – Title for the PCPT test
waterunitweight – Unit weight of water used for effective stress calculations (default=10.25kN/m3 for seawater)
- apply_correlation(name, outputs, apply_for_soiltypes='all', **kwargs)[source]¶
Applies a correlation to the given PCPT data. The name of the correlation needs to be chosen from the following available correlations. Each correlation corresponds to a function in the pcpt module. By default, the correlation is applied to the entire depth range. However, a restriction on the soil types to which the correlation can be applied can be specified with the apply_for_soiltypes keyword argument. A list with the soil types for which the correlation needs to be applied can be provided.
Ic Robertson and Wride (1998) (behaviourindex_pcpt_robertsonwride) - Calculation of soil behaviour type index from cone tip resistance and sleeve friction
Isbt Robertson (2010) (behaviourindex_pcpt_nonnormalised) - Calculation of non-normalised soil behaviour type index from cone tip resistance and friction ratio
Gmax Rix and Stokoe (1991) (gmax_sand_rixstokoe) - Calculation of small-strain shear modulus for uncemented silica sand from cone tip resistance and vertical effective stress
Gmax Mayne and Rix (1993) (gmax_clay_maynerix) - Calculation of small-strain shear modulus for clay from cone tip resistance
Dr Baldi et al (1986) - NC sand (relativedensity_ncsand_baldi) - Calculation of relative density of normally consolidated silica sand
Dr Baldi et al (1986) - OC sand (relativedensity_ocsand_baldi) - Calculation of relative density of overconsolidated silica sand
Dr Jamiolkowski et al (2003) (relativedensity_sand_jamiolkowski) - Calculation of relative density dry and saturated silica sand
Friction angle Kulhawy and Mayne (1990) (frictionangle_sand_kulhawymayne) - Calculation of effective friction angle for sand
Su Rad and Lunne (1988): (undrainedshearstrength_clay_radlunne) - Calculation of undrained shear strength for clay based on empirical cone factor Nk
Friction angle Kleven (1986): (frictionangle_overburden_kleven) - Calculation of friction angle for North Sea sands at various stress levels and relative densities
OCR Lunne (1989): (ocr_cpt_lunne) - Calculation of OCR for clay
Sensitivity Rad and Lunne (1986): (sensitivity_frictionratio_lunne) - Calculation of sensitivity for clay
Unit weight Mayne et al (2010): (unitweight_mayne) - Calculation of total unit weight
Shear wave velocity Robertson and Cabal (2015): (vs_ic_robertsoncabal) - Calculation of shear wave velocity for all soil types
K0 Mayne (2007) - sand: (k0_sand_mayne) - Calculation of coefficient of lateral earth pressure for sand
Es Bellotti (1989) - sand: (drainedsecantmodulus_sand_bellotti) - Calculation of drained modulus at average strain of 0.1pct for sand
Note that certain correlations require either the calculation of normalised properties or application of preceding correlations
- Parameters:
name – Name of the correlation according to the list defined above
outputs – a dict of keys and values where keys are the same as the keys in the correlation, values are the table headers you want
apply_for_soiltypes – List with soil types to which the correlation needs the be applied.
kwargs – Optional keyword arguments for the correlation.
- Returns:
Adds a column with key outkey to the dataframe with PCPT data
- combine_pcpt(obj, keep='first')[source]¶
Combine PCPT data for two PCPTProcessing objects. The data of the second PCPT (obj) will be merged with the current object and the data attribute will be a combined dataframe. Only columns ‘z [m]’, ‘qc [MPa]’, ‘fs [MPa]’, ‘u2 [MPa]’ and ‘Push’ will be retained.
- Parameters:
obj – PCPTProcessing object containing the second PCPT info
keep – Determines what to do in the area with overlap (“first”, “second” or “both”). If “first” is chosen (default), the data from the first PCPT self is used in the area with overlap. For “second”, data for the second PCPT obj is retained. If ‘both’ is selected, overlapping data will exist which might lead to presentation problems.
- Returns:
Updates the data attribute of the current PCPTProcessing object
- downhole_pcpt_corrections(area_ratio_override=nan)[source]¶
Correct the PCPT for downhole effects. Select each push, find the start depth of the push and
\[ \begin{align}\begin{aligned}q_c = q_c^* + d \cdot a \cdot \gamma_w\\u_2 = u_2^* + \gamma_w \cdot d\end{aligned}\end{align} \]- Returns:
- load_a00(path, column_widths=[], skiprows=None, custom_headers=None, z_key=None, qc_key=None, fs_key=None, u2_key=None, push_key='Push', qc_multiplier=1, fs_multiplier=1, u2_multiplier=1, add_zero_row=True, **kwargs)[source]¶
Reads PCPT data from a Uniplot .a00 file The widths of the columns for the .a00 file need to be specified.
- Parameters:
path – Path to the .a00 file
column_widths – Column widths to use for the import (compulsory)
skiprows – Number of rows to skip (optional, default=None for auto-detection, depends on the occurence of ‘Data table’ in the file)
custom_headers – Custom headers to be used (default=None for auto-detection)
z_key – Column key for depth. Optional, default=None when ‘z [m]’ is the column key.
qc_key – Column key for cone tip resistance. Optional, default=None when ‘qc [MPa]’ is the column key.
fs_key – Column key for sleeve friction. Optional, default=None when ‘fs [MPa]’ is the column key.
u2_key – Column key for pore pressure at shoulder. Optional, default=None when ‘u2 [MPa]’ is the column key.
push_key – Column key for the current push (for downhole PCPT). Optional, default=None for a continuous push.
qc_multiplier – Multiplier applied on cone tip resistance to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
fs_multiplier – Multiplier applied on sleeve friction to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
u2_multiplier – Multiplier applied on pore pressure at shoulder to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
add_zero_row – Boolean determining whether a datapoint needs to be added at zero depth.
kwargs – Optional keyword arguments for reading the datafile
- Returns:
- load_ags(path, z_key=None, qc_key=None, fs_key=None, u2_key=None, push_key='Push', qc_multiplier=1, fs_multiplier=1, u2_multiplier=1, add_zero_row=True, ags_group='SCPT', verbose_keys=False, use_shorthands=False, **kwargs)[source]¶
Loads PCPT data from an AGS file. Specific column keys have to be provided for z, qc, fs and u2. If column keys are not specified, the following keys are used:
‘z [m]’ for depth below mudline
‘qc [MPa]’ for cone tip resistance
‘fs [MPa]’ for sleeve friction
‘u2 [MPa]’ for pore pressure at cone shoulder
Note that cone tip resistance, sleeve friction and pore pressure at the shoulder all need to be converted to MPa. Multipliers can be specified if a conversion from kPa to MPa is required. Optional keyword arguments for the read_ags function in Pandas can be specified as **kwargs.
- Parameters:
path – Path to the ags file
z_key – Column key for depth. Optional, default=None when ‘z [m]’ is the column key.
qc_key – Column key for cone tip resistance. Optional, default=None when ‘qc [MPa]’ is the column key.
fs_key – Column key for sleeve friction. Optional, default=None when ‘fs [MPa]’ is the column key.
u2_key – Column key for pore pressure at shoulder. Optional, default=None when ‘u2 [MPa]’ is the column key.
push_key – Column key for the current push (for downhole PCPT). Optional, default=None for a continuous push.
qc_multiplier – Multiplier applied on cone tip resistance to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
fs_multiplier – Multiplier applied on sleeve friction to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
u2_multiplier – Multiplier applied on pore pressure at shoulder to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
add_zero_row – Boolean determining whether a datapoint needs to be added at zero depth.
ags_group – Name of the AGS group with the CPT data (default=
"SCPT"
)verbose_keys – Boolean for using verbose keys in the AGS converter (default=True)
use_shorthands – Boolean for using shorthands in the AGS converter (default=True)
kwargs – Optional keyword arguments for the read_excel function in Pandas (e.g. sheet_name, header, …)
- Returns:
Sets the columns ‘z [m]’, ‘qc [MPa]’, ‘fs [MPa]’ and ‘u2 [MPa]’ of the .data attribute
- load_asc(path, column_widths=[], skiprows=None, custom_headers=None, z_key=None, qc_key=None, fs_key=None, u2_key=None, push_key='Push', qc_multiplier=1, fs_multiplier=1, u2_multiplier=1, add_zero_row=True, **kwargs)[source]¶
Reads PCPT data from a Uniplot .asc file The widths of the columns for the .asc file need to be specified.
- Parameters:
path – Path to the .asc file
column_widths – Column widths to use for the import (compulsory)
skiprows – Number of rows to skip (optional, default=None for auto-detection, depends on the occurence of ‘Data table’ in the file)
custom_headers – Custom headers to be used (default=None for auto-detection)
z_key – Column key for depth. Optional, default=None when ‘z [m]’ is the column key.
qc_key – Column key for cone tip resistance. Optional, default=None when ‘qc [MPa]’ is the column key.
fs_key – Column key for sleeve friction. Optional, default=None when ‘fs [MPa]’ is the column key.
u2_key – Column key for pore pressure at shoulder. Optional, default=None when ‘u2 [MPa]’ is the column key.
push_key – Column key for the current push (for downhole PCPT). Optional, default=None for a continuous push.
qc_multiplier – Multiplier applied on cone tip resistance to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
fs_multiplier – Multiplier applied on sleeve friction to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
u2_multiplier – Multiplier applied on pore pressure at shoulder to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
add_zero_row – Boolean determining whether a datapoint needs to be added at zero depth.
kwargs – Optional keyword arguments for reading the datafile
- Returns:
- load_design_profile(design_data)[source]¶
Loads a design profile for the parameters available in the data attribute of the PCPTProcessing object. This design profile can then be plotted vs the PCPT data.
- Parameters:
design_data – Pandas dataframe with design soil profile. Linear variation of numerical parameters is expected so for example, use columns Su from [kPa] and Su to [kPa]
- Returns:
Sets the designprofile attribute of the PCPTProcessing object
- load_excel(path, z_key=None, qc_key=None, fs_key=None, u2_key=None, push_key='Push', qc_multiplier=1, fs_multiplier=1, u2_multiplier=1, add_zero_row=True, **kwargs)[source]¶
Loads PCPT data from an Excel file. Specific column keys have to be provided for z, qc, fs and u2. If column keys are not specified, the following keys are used:
‘z [m]’ for depth below mudline
‘qc [MPa]’ for cone tip resistance
‘fs [MPa]’ for sleeve friction
‘u2 [MPa]’ for pore pressure at cone shoulder
Note that cone tip resistance, sleeve friction and pore pressure at the shoulder all need to be converted to MPa. Multipliers can be specified if a conversion from kPa to MPa is required. Optional keyword arguments for the read_excel function in Pandas can be specified as **kwargs.
- Parameters:
path – Path to the Excel file
z_key – Column key for depth. Optional, default=None when ‘z [m]’ is the column key.
qc_key – Column key for cone tip resistance. Optional, default=None when ‘qc [MPa]’ is the column key.
fs_key – Column key for sleeve friction. Optional, default=None when ‘fs [MPa]’ is the column key.
u2_key – Column key for pore pressure at shoulder. Optional, default=None when ‘u2 [MPa]’ is the column key.
push_key – Column key for the current push (for downhole PCPT). Optional, default=None for a continuous push.
qc_multiplier – Multiplier applied on cone tip resistance to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
fs_multiplier – Multiplier applied on sleeve friction to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
u2_multiplier – Multiplier applied on pore pressure at shoulder to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
add_zero_row – Boolean determining whether a datapoint needs to be added at zero depth.
kwargs – Optional keyword arguments for the read_excel function in Pandas (e.g. sheet_name, header, …)
- Returns:
Sets the columns ‘z [m]’, ‘qc [MPa]’, ‘fs [MPa]’ and ‘u2 [MPa]’ of the .data attribute
- load_gef(path, inverse_depths=False, override_title=True, z_key=None, qc_key=None, fs_key=None, u2_key=None, push_key='Push', qc_multiplier=1, fs_multiplier=1, u2_multiplier=1, add_zero_row=True, separator=' ', **kwargs)[source]¶
Reads PCPT data from a Geotechnical Exchange Format (.gef) file. The file is parsed using regular expressions to provide the necessary data. If location data is provided, this data is also
- Parameters:
path – Path to the .asc file
inverse_depths – Boolean indicating whether depths need to be inverted. A positive downward z-axis is expected.
override_title – Boolean indicating if the title specified needs to be replaced by the test id (default = True).
z_key – Column key for depth. Optional, default=None when ‘z [m]’ is the column key.
qc_key – Column key for cone tip resistance. Optional, default=None when ‘qc [MPa]’ is the column key.
fs_key – Column key for sleeve friction. Optional, default=None when ‘fs [MPa]’ is the column key.
u2_key – Column key for pore pressure at shoulder. Optional, default=None when ‘u2 [MPa]’ is the column key.
push_key – Column key for the current push (for downhole PCPT). Optional, default=None for a continuous push.
qc_multiplier – Multiplier applied on cone tip resistance to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
fs_multiplier – Multiplier applied on sleeve friction to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
u2_multiplier – Multiplier applied on pore pressure at shoulder to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
add_zero_row – Boolean determining whether a datapoint needs to be added at zero depth.
separator – Separator used for the gef file (default is
' '
)kwargs – Optional keyword arguments for reading the datafile (using
read_csv
from Pandas)
- Returns:
- load_multi_asc(path, column_widths=[], skiprows=None, custom_headers=None, z_key=None, qc_key=None, fs_key=None, u2_key=None, push_key='Push', qc_multiplier=1, fs_multiplier=1, u2_multiplier=1, add_zero_row=True, start_string='Data table', end_string='UNICAS data file', **kwargs)[source]¶
Reads PCPT data from a Uniplot .asc file with multiple pushes The widths of the columns for the .asc file need to be specified.
- Parameters:
path – Path to the .asc file
column_widths – Column widths to use for the import (compulsory)
skiprows – Number of rows to skip (optional, default=None for auto-detection, depends on the occurence of ‘Data table’ in the file)
custom_headers – Custom headers to be used (default=None for auto-detection)
z_key – Column key for depth. Optional, default=None when ‘z [m]’ is the column key.
qc_key – Column key for cone tip resistance. Optional, default=None when ‘qc [MPa]’ is the column key.
fs_key – Column key for sleeve friction. Optional, default=None when ‘fs [MPa]’ is the column key.
u2_key – Column key for pore pressure at shoulder. Optional, default=None when ‘u2 [MPa]’ is the column key.
push_key – Column key for the current push (for downhole PCPT). Optional, default=None for a continuous push.
qc_multiplier – Multiplier applied on cone tip resistance to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
fs_multiplier – Multiplier applied on sleeve friction to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
u2_multiplier – Multiplier applied on pore pressure at shoulder to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
add_zero_row – Boolean determining whether a datapoint needs to be added at zero depth.
start_string – String showing the start of the data
end_string – String showing the end of the data
kwargs – Optional keyword arguments for reading the datafile
- Returns:
- load_multiple_asc(folder, column_widths=[], skiprows=None, custom_headers=None, z_key=None, qc_key=None, fs_key=None, u2_key=None, push_key='Push', qc_multiplier=1, fs_multiplier=1, u2_multiplier=1, **kwargs)[source]¶
A PCPT can be provided as multiple .asc files in one folder. This method loops over the individual files and creates a combined data attribute with PCPT data. The method assumes that all .asc files have the same format.
- Parameters:
folder – Folder with the .asc files
column_widths – Column widths to use for the import (compulsory)
skiprows – Number of rows to skip (optional, default=None for auto-detection, depends on the occurence of ‘Data table’ in the file)
custom_headers – Custom headers to be used (default=None for auto-detection)
z_key – Column key for depth. Optional, default=None when ‘z [m]’ is the column key.
qc_key – Column key for cone tip resistance. Optional, default=None when ‘qc [MPa]’ is the column key.
fs_key – Column key for sleeve friction. Optional, default=None when ‘fs [MPa]’ is the column key.
u2_key – Column key for pore pressure at shoulder. Optional, default=None when ‘u2 [MPa]’ is the column key.
push_key – Column key for the current push (for downhole PCPT). Optional, default=None for a continuous push.
qc_multiplier – Multiplier applied on cone tip resistance to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
fs_multiplier – Multiplier applied on sleeve friction to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
u2_multiplier – Multiplier applied on pore pressure at shoulder to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
kwargs – Optional keyword arguments for reading the datafiles
- Returns:
Sets the data attribute of the PCPTProcessing object
- load_pandas(df, z_key=None, qc_key=None, fs_key=None, u2_key=None, push_key='Push', qc_multiplier=1, fs_multiplier=1, u2_multiplier=1, add_zero_row=True)[source]¶
Loads PCPT from a Pandas dataframe. Specific column keys have to be provided for z, qc, fs and u2. If column keys are not specified, the following keys are used:
‘z [m]’ for depth below mudline
‘qc [MPa]’ for cone tip resistance
‘fs [MPa]’ for sleeve friction
‘u2 [MPa]’ for pore pressure at cone shoulder
Note that cone tip resistance, sleeve friction and pore pressure at the shoulder all need to be converted to MPa
- Parameters:
df – Pandas dataframe with required column keys
z_key – Column key for depth. Optional, default=None when ‘z [m]’ is the column key.
qc_key – Column key for cone tip resistance. Optional, default=None when ‘qc [MPa]’ is the column key.
fs_key – Column key for sleeve friction. Optional, default=None when ‘fs [MPa]’ is the column key.
u2_key – Column key for pore pressure at shoulder. Optional, default=None when ‘u2 [MPa]’ is the column key.
push_key – Column key for the current push (for downhole PCPT). Optional, default=None for a continuous push.
qc_multiplier – Multiplier applied on cone tip resistance to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
fs_multiplier – Multiplier applied on sleeve friction to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
u2_multiplier – Multiplier applied on pore pressure at shoulder to convert to MPa (e.g. 0.001 to convert from kPa to MPa)
add_zero_row – Boolean determining whether a datapoint needs to be added at zero depth.
- Returns:
Sets the columns ‘z [m]’, ‘qc [MPa]’, ‘fs [MPa]’ and ‘u2 [MPa]’ of the .data attribute
- load_pydov(name, push_key='Push', add_zero_row=True, z_key='diepte', qc_key='qc', fs_key='fs', u2_key='u', qc_multiplier=1, fs_multiplier=0.001, u2_multiplier=0.001, **kwargs)[source]¶
Load CPT data from Databank Ondergrond Vlaanderen based on the unique CPT name which can be found in DOV :param name: Unique identifier of the CPT in pydov :return: Sets the data attribute of the PCPTProcessing object
- map_properties(layer_profile, cone_profile= Depth from [m] ... Sleeve cross-sectional area bottom [cm2] 0 0 ... NaN [1 rows x 8 columns], initial_vertical_total_stress=0, vertical_total_stress=None, vertical_effective_stress=None, waterlevel=0, extend_cone_profile=True, extend_layer_profile=True)[source]¶
Maps the soil properties defined in the layering and the cone properties to the grid defined by the cone data. The procedure also calculates the total and effective vertical stress. Note that pre-calculated arrays with total and effective vertical stress can also be supplied to the routine. These needs to have the same length as the array with PCPT depth data.
- Parameters:
layer_profile –
SoilProfile
object with the layer properties (need to contain the soil parameterTotal unit weight [kN/m3]
cone_profile –
SoilProfile
object with the cone properties (default=``DEFAULT_CONE_PROPERTIES``)initial_vertical_total_stress – Initial vertical total stress at the highest point of the soil profile
vertical_total_stress – Pre-calculated total vertical stress at PCPT depth nodes (default=None which will lead to calculation of total stress inside the routine)
vertical_effective_stress – Pre-calculated effective vertical stress at PCPT depth nodes (default=None which will lead to calculation of total stress inside the routine)
waterlevel – Waterlevel [m] in the soil (measured from soil surface), default = 0m
extend_cone_profile – Boolean determining whether the cone profile needs to be extended to go to the bottom of the CPT (default = True)
extend_layer_profile – Boolean determining whether the layer profile needs to be extended to the bottom of the CPT (default = True)
- Returns:
Expands the dataframe .data with additional columns for the cone and soil properties
- normalise_pcpt(qc_for_rf=False)[source]¶
Carries out the necessary normalisation and correction on PCPT data to allow calculation of derived parameters and soil type classification.
First, the cone resistance is corrected for the unequal area effect using the cone area ratio. The correction for total sleeve friction is not included as it is more uncommon. The procedure assumes that the pore pressure are measured at the shoulder of the cone. If this is not the case, corrections can be used which are not included in this function.
During normalisation, the friction ratio and pore pressure ratio are calculated. Note that the total cone resistance is used for the friction ratio and pore pressure ratio calculation, the pore pressure ratio calculation also used the total vertical effective stress. The normalised cone resistance and normalised friction ratio are also calculated.
Finally the net cone resistance is calculated.
Note that the absence of pore water pressure measurements will lead to NaN values. Reasoning can be used (e.g. presence of rapidly draining layers) to edit the pore pressure data before running this method.
The total sleeve friction is also calculated. If the cross-sectional area of the friction sleeve is equal at the top and bottom of the sleeve, a correction is not required. This is the default behaviour (cross-sectional areas equal to NaN) but the areas can be entered to calculate the total sleeve friction.
\[ \begin{align}\begin{aligned}q_c = q_c^* + d \cdot a \cdot \gamma_w\\q_t = q_c + u_2 \cdot (1 - a)\\u_2 = u_2^* + \gamma_w \cdot d\\\Delta u_2 = u_2 - u_o\\R_f = \frac{f_s}{q_t}\\B_q = \frac{\Delta u_2}{q_t - \sigma_{vo}}\\Q_t = \frac{q_t - \sigma_{vo}}{\sigma_{vo}^{\prime}}\\F_r = \frac{f_s}{q_t - \sigma_{vo}}\\q_{net} = q_t - \sigma_{vo}\\f_t = f_s - u_2 \frac{A_{sb} - A_{st}}{A_s}\end{aligned}\end{align} \]- Parameters:
qc_for_rf – Boolean determining whether cone resistance instead of total cone resistance should be used for CPTs where pore pressures are not measured (default=False). If True, \(q_t\) is replaced by \(q_c\) in the formula for \(R_f\).
- Returns:
Supplements the PCPT data (.data) with the normalised properties (column keys ‘qt [MPa]’, ‘Delta u2 [MPa]’, ‘Rf [%]’, ‘Bq [-]’, ‘Qt [-]’, ‘Fr [%]’, ‘qnet [MPa]’, ‘ft [MPa]’
- plot_design_profile(prop_keys, design_keys, plot_ranges, plot_ticks, z_range=None, z_tick=2, legend_titles=None, axis_titles=None, plot_height=700, plot_width=1000, colors=None, design_color='red', design_dash='dot', return_fig=False, plot_title=None)[source]¶
Plots the soil and/or PCPT properties vs depth.
- Parameters:
prop_keys – Tuple of tuples with the keys to be plotted. Keys in the same tuple are plotted on the same panel
design_keys – Tuple of tuples with the design profile keys to be plotted. Keys in the same tuple are plotted on the same panel (note that () is an empty tuple). The design keys need to be specified as for example Gmax [kPa] if the designprofile attribute contains keys Gmax from [kPa] and Gmax to [kPa]
plot_ranges – Tuple of tuples with ranges for the panels of the plot
plot_ticks – Tuple with tick intervals for the plot panels
z_range – Range for depths (optional, default is (0, maximum PCPT depth)
z_tick – Tick mark distance for PCPT (optional, default=2)
legend_titles – Tuple with entries to be used in the legend. If left blank, the keys are used
axis_titles – Tuple with entries to be used as axis labels. If left blank, the keys are used
plot_height – Height of the plot in pixels
plot_width – Width of the plot in pixels
colors – Color list to be used in the plotting panels
design_color – Color to be used for the design lines
design_dash – Dash style to be used for the design lines
return_fig – Boolean determining whether the figure is returned or the plot is generated; Default behaviour is to generate the plot.
plot_title – Plot title (optional, default=None for no title)
- Returns:
Returns the figure if return_fig=True. Otherwise the plot is displayed.
- plot_normalised_pcpt(qt_range=(0, 3), fr_range=(-1, 1), bq_range=(-0.6, 1.4), bq_tick=0.2, z_range=None, z_tick=2, plot_height=700, plot_width=1000, color=None, return_fig=False, plot_title=None)[source]¶
Plots the normalised PCPT properties vs depth.
- Parameters:
qt_range – Range for Qt (optional, default is (0, 3) for 1 to 1000 on log scale)
fr_range – Range for Fr (optional, default is (-1, 1) for 0.1 to 10 on log scale)
bq_range – Range for Bq (optional, default is (-0.6, 1.4))
bq_tick – Tick mark interval for Bq (optional, default=0.2)
z_range – Range for depths (optional, default is (0, maximum PCPT depth)
z_tick – Tick mark distance for PCPT (optional, default=2)
plot_height – Height of the plot in pixels
plot_width – Width of the plot in pixels
return_fig – Boolean determining whether the figure is returned or the plot is generated; Default behaviour is to generate the plot.
plot_title – Plot title (optional, default=None for no title)
- Returns:
Returns the figure if return_fig=True. Otherwise the plot is displayed.
- plot_properties(prop_keys, plot_ranges, plot_ticks, z_range=None, z_tick=2, legend_titles=None, axis_titles=None, showlegends=None, plot_layers=True, plot_height=700, plot_width=1000, colors=None, return_fig=False, plot_title=None)[source]¶
Plots the soil and/or PCPT properties vs depth.
- Parameters:
prop_keys – Tuple of tuples with the keys to be plotted. Keys in the same tuple are plotted on the same panel
plot_ranges – Tuple of tuples with ranges for the panels of the plot
plot_ticks – Tuple with tick intervals for the plot panels
z_range – Range for depths (optional, default is (0, maximum PCPT depth)
z_tick – Tick mark distance for PCPT (optional, default=2)
legend_titles – Tuple with entries to be used in the legend. If left blank, the keys are used
axis_titles – Tuple with entries to be used as axis labels. If left blank, the keys are used
showlegends – Array of booleans determining whether or not to show the trace in the legend
plot_layers – Boolean determining whether layers are plotted (default=True)
plot_height – Height of the plot in pixels
plot_width – Width of the plot in pixels
return_fig – Boolean determining whether the figure is returned or the plot is generated; Default behaviour is to generate the plot.
plot_title – Plot title (optional, default=None for no title)
- Returns:
Returns the figure if return_fig=True. Otherwise the plot is displayed.
- plot_properties_withlog(prop_keys, plot_ranges, plot_ticks, legend_titles=None, axis_titles=None, showfig=True, showlayers=True, **kwargs)[source]¶
Plots CPT properties vs depth and includes a mini-log on the left-hand side. The minilog is composed based on the entries in the
Soil type
column of the layering :param prop_keys: Tuple of tuples with the keys to be plotted. Keys in the same tuple are plotted on the same panel :param plot_ranges: Tuple of tuples with ranges for the panels of the plot :param plot_ticks: Tuple with tick intervals for the plot panels :param z_range: Range for depths (optional, default is (0, maximum PCPT depth) :param z_tick: Tick mark distance for PCPT (optional, default=2) :param legend_titles: Tuple with entries to be used in the legend. If left blank, the keys are used :param axis_titles: Tuple with entries to be used as axis labels. If left blank, the keys are used :param showfig: Boolean determining whether the figure needs to be shown in the notebook (default=True) :param showlayers: Boolean determining whether layer positions need to be plotted (default=True) :param **kwargs: Specify keyword arguments for thegeneral.plotting.plot_with_log
function :return: Plotly figure with mini-log
- plot_raw_pcpt(qc_range=(0, 100), qc_tick=10, fs_range=(0, 1), fs_tick=0.1, u2_range=(-0.5, 2.5), u2_tick=0.5, z_range=None, z_tick=2, rf_range=(0, 5), rf_tick=0.5, show_hydrostatic=True, plot_friction_ratio=False, friction_ratio_panel=3, plot_height=700, plot_width=1000, return_fig=False, plot_title=None, plot_margin={'b': 50, 'l': 50, 't': 100}, color=None, hydrostaticcolor=None, show_hydrostatic_legend=False, waterlevel_override=0)[source]¶
Plots the raw PCPT data using the Plotly package. This generates an interactive plot.
- Parameters:
qc_range – Range for the cone tip resistance (default=(0, 100MPa))
qc_tick – Tick interval for the cone tip resistance (default=10MPa)
fs_range – Range for the sleeve friction (default=(0, 1MPa))
fs_tick – Tick interval for sleeve friction (default=0.1MPa)
u2_range – Range for the pore pressure at the shoulder (default=(-0.1, 0.5MPa))
u2_tick – Tick interval for the pore pressure at the shoulder (default=0.05MPa)
z_range – Range for the depth (default=None for plotting from zero to maximum cone penetration)
z_tick – Tick interval for depth (default=2m)
show_hydrostatic – Boolean determining whether hydrostatic pressure is shown on the pore pressure plot panel
rf_range – Range for the friction ratio, if used (default=None for plotting from zero to 5%)
rf_tick – Tick interval for friction ratio, if used (default=0.5%)
show_hydrostatic – Boolean determining whether hydrostatic pressure is shown on the pore pressure plot panel
plot_friction_ratio – Boolean determining whether friction ratio needs to be plotted (default=False)
friction_ratio_panel – Panel for plotting friction ratio (default=3 for pore pressure panel). Only used when
plot_friction_ratio=True
plot_height – Height for the plot (default=700px)
plot_width – Width for the plot (default=1000px)
return_fig – Boolean determining whether the figure needs to be returned (True) or plotted (False)
plot_title – Plot for the title (default=None)
plot_margin – Margin for the plot (default=dict(t=100, l=50, b=50))
color – Color to be used for plotting (default=None for default plotly colors)
color – Color to be used for plotting the hydrostatic pressure (default=None for default plotly colors)
show_hydrostatic_legend – Boolean determining whether to show the hydrostatic pressure in the legend
waterlevel_override – If a waterlevel is not specified in a soil profile which is mapped to the CPT, this can be used to get the water table at the correct elevation (default=0m for water level at the surface, >0 for water level below groundlevel)
- Returns:
- plot_robertson_chart(start_depth=None, end_depth=None, qt_range=(0, 3), fr_range=(-1, 1), bq_range=(-0.6, 1.4), bq_tick=0.2, plot_height=700, plot_width=1000, return_fig=False, plot_title=None, backgroundimagedir='')[source]¶
Plots the normalised PCPT points in the Robertson chart to distinguish the soil type. The display can be limited to a specific depth range (by specifying start_depth and end_depth. The color coding is based on the layer. :return: Returns the figure if return_fig=True. Otherwise the plot is displayed.
- to_excel(output_path)[source]¶
Write the PCPT object to an Excel file. The Excel file contains multiple sheet for the location, layer data, cone properties and raw data.
- Parameters:
output_path – A valid path to the output .xlsx file (include the file suffix).
- Returns:
The file is written to the specified location
- to_json(write_file=False, output_path=None)[source]¶
Write the PCPT object to a JSON file. JSON can either be returned or a JSON file can be written.
- Parameters:
write_file – Boolean determining whether a file is written or not (default=False). If True, a file is written to output_path
output_path – A valid path to the output .json file (include the file suffix).
- Returns:
If no file is returned, the JSON containing the location and data of the PCPT is returned.