Python: calculation of required plate thickness of exposed type penstock against buckling pressure by Brent method
A critical buckling pressure of exposed type penstocks can be obtained by following equation.
critical buckling pressure of penstock | |
plate thickness excluding corrosion allowance | |
design external diameter | |
elastic modulus of penstock (=206,000MPa) | |
Poisson's modulus of penstock (=0.3) |
usually, a corrosion allowance is set to , and the design plate thickness including corrosion allowance and the design external diameter can be calculated as follows.
Where, means the design internal diameter.
In case of exposed type penstocks, it is required to withstand the buckling pressure of 0.02 MPa which includes a safety factor of 1.5, and the plate thickness with this capacity shall be defined as a lower limit of plate thickness.
The equation to be solved by Brent method is shown below. The equation has a shape of .
Required two initial values for Brent method are given as t1=1.0, t2=50.0
in the program.
Program code is shown below.
import numpy as np from scipy import optimize def func(t,d0,eps,pk): Es=206000 # elastic modulus of steel po=0.3 # Poisson's ratio of steel f=pk-2*Es/(1-po**2)*(t/(d0+t+eps))**3 return f def main(): d0=4000.0 # internal diameter of penstock eps=1.5 # corrosion alloowance pk=0.02 # critical buckling pressure t1=1.0 # initial value for Brent method t2=50.0 # initial value for Brent method tt=optimize.brentq(func,t1,t2,args=(d0,eps,pk)) t0=np.ceil(tt+eps) # required plate thickness print('t + eps=',tt+eps) print('t0=',t0) #============== # Execution #============== if __name__ == '__main__': main()
The calculation results are shown below.
t + eps= 15.695548237490522 t0= 16.0
That's all. Thank you.