slippy.contact.solve_hertz_point¶
- slippy.contact.solve_hertz_point(*, r_rel=None, e1=None, e2=None, v1=None, v2=None, load=None, max_pressure=None, max_shear_stress=None, contact_radius=None, max_von_mises=None, total_displacement=None, max_tensile_stress=None)[source]¶
Finds the remaining hertz parameter for a spherical contact
- Parameters
r_rel (float, optional) – The relative radii of the contact defined as 1/(1/r1+1/r2) where r1,2 are the radii of the bodies. For a ball on the flat r_rel is the radius of the ball.
e1 (float, optional) – The Young’s moduli of the bodies, if neither is set they will be assumed to be equal
e2 (float, optional) – The Young’s moduli of the bodies, if neither is set they will be assumed to be equal
v1 (float, optional) – The Poisson’s ratios for the bodies, if neither is set the are assumed to be equal
v2 (float, optional) – The Poisson’s ratios for the bodies, if neither is set the are assumed to be equal
load (float, optional) – The load per unit length for the contact
max_pressure (float, optional) – The maximum pressure in the contact region
max_shear_stress (float, optional) – The maximum shear stress in the first body, swap the materials to change the body
contact_radius (float, optional) – The radius of the contact patch
max_von_mises (float, optional) – The maximum von mises stress in the first body, swap the materials to change body
total_displacement (float, optional) – The displacement of the bodies towards each other
max_tensile_stress (float, optional) – The maximum tensile stress in the first body, swap the materials to cahnge the body
- Returns
HertzPointSolution – The system with all of the possible inputs defined
- Return type
namedtuple
See also
Notes
This function will only work for spherical contacts such as a ball on flat, a ball on ball or crossed cylinders. It also uses approximate formulas based on a poissions ratio of 0.3 for stress calculations, if more accurate results are required hertz_full should be used.
The independent parameters are: r_rel, e1, e2, v1, v2 and load. The dependent parameters are: max_pressure, max_shear_stress, contact_width and max_von_mises
For this function to run either: All of the independent parameters are set, or All but one of the independent parameters are set and exactly one of the dependent parameters or All of the independent parameters are set apart from both e’s or both v’s, in this case they are assumed to be equal
Regardless of which combination has been set the resulting output will contain all of the possible input parameters
References
Johnson, K. (1985). Contact Mechanics. Cambridge: Cambridge University Press. doi:10.1017/CBO9781139171731
Examples
Finding the radius of ball required to give a specific contact pressure:
>>> result = solve_hertz_point(r_rel=None, e1=200e9, e2=200e9, v1=0.3, v2=0.3, max_pressure=1e9, load=500) >>> result.load
Finding the stiffness of material required to give a specific contact radius:
>>> result = solve_hertz_point(r_rel=0.05, e1=None, e2=None, v1=0.3, v2=0.3, load=1000, contact_radius=1e-8) >>> result.e1