Helical Soil Properties#
Download the HelicalPile.rspile2 for this example.
Code Snippet: Manipulation of Driven Soil Properties#
from RSPileScripting.RSPileModeler import RSPileModeler
from RSPileScripting.enums import *
import os, inspect
current_dir = os.path.dirname(os.path.abspath(inspect.getfile(lambda: None)))
RSPileModeler.startApplication(60044)
rspile_modeler = RSPileModeler(60044)
model = rspile_modeler.openFile(rf"{current_dir}\example_models\HelicalPile.rspile2")
soil_property_list = model.getSoilProperties()
soil1 = soil_property_list[0]
soil2 = soil_property_list[1]
soil1.setName("Sand (Fill)")
soil1.setUnitWeight(21)
soil1.HelicalProperties.setHelicalSoilType(HelicalType.COHESIONLESS)
soil1.HelicalProperties.Cohesionless.setInternalFrictionAngle(28)
soil1.HelicalProperties.Cohesionless.setFrictionAngleBetweenShaftAndSoil(20)
soil1.HelicalProperties.Cohesionless.setCoefficientOfLateralEarthPressureForShaft(1)
soil2.setName("Silty Clay")
soil2.setUnitWeight(19)
soil2.HelicalProperties.setHelicalSoilType(HelicalType.COHESIVE)
soil2.HelicalProperties.Cohesive.setUndrainedShearStrength(72)
soil2.HelicalProperties.Cohesive.setNcPrime(8)
soil2.HelicalProperties.Cohesive.setAdhesionFactorForShaft(1)
print(soil1.getName())
print(soil1.getUnitWeight())
print(soil1.HelicalProperties.getHelicalSoilType())
print(soil1.HelicalProperties.Cohesionless.getInternalFrictionAngle())
print(soil1.HelicalProperties.Cohesionless.getFrictionAngleBetweenShaftAndSoil())
print(soil1.HelicalProperties.Cohesionless.getCoefficientOfLateralEarthPressureForShaft())
print(soil2.getName())
print(soil2.getUnitWeight())
print(soil2.HelicalProperties.getHelicalSoilType())
print(soil2.HelicalProperties.Cohesive.getUndrainedShearStrength())
print(soil2.HelicalProperties.Cohesive.getNcPrime())
print(soil2.HelicalProperties.Cohesive.getAdhesionFactorForShaft())
model.save()
model.close()
rspile_modeler.closeApplication()
Output#
Sand (Fill)
21.0
HelicalType.COHESIONLESS
28.0
20.0
1.0
Silty Clay
19.0
HelicalType.COHESIVE
72.0
8.0
1.0