# -* coding: cp1251 -*-
# Алгоритм расчета момента инерции и площади интегрированием
import math # Подключили математич модуль
u=" Алгоритм временного расчета Jx интегрированием,"
uu=" "
uuu=" ...... ...... ....... ....... ...... ....... ....... "
print (uu)
print (uu)
print (u)
print (uuu)
print (uu)
u=" Ввести Шаг вдоль оси Y-Y "
print(u)
t=0.00
t=input( ) # Вводим число
t=float(t) # Принудительно в вещественное число
print (uu)
J=0.0000
J=float(J)
Jx=0.0000
Jx=float(Jx)
S=0.0000
S=float(S)
Ss=0.0000
Ss=float(Ss)
d=0.00000001
d=float(d)
L=0.0
L=float(L)
n=1
n=float(n)
while d>0:
# Далее строки начинаются с четырех пробелов.
L=L+t # Суммируем смещение по оси
ss=str(n) # Преобразуем число в строку
Lt=str(L) # Преобразуем число в строку
u=" Ввести высоту по оси Y-Y Ввод "
u=u+ss+" Смещение по оси = "+Lt
print(u)
d=0.00
d=input( ) # Вводим число
d=float(d) # Принудительно в вещественное число
print (uu)
J=t*d*d*d/12 # Находим момент инерции элемента
Jx=Jx+J # Суммируем J
S=t*d # Нашли площадь элемента
Ss=Ss+S # Суммируем S
n=n+1 # Счетчик числа вводов
# Далее строки начинаются без пробелов.
Pii=math.pi # Вытащили число " Пи "
# Rk=math.sqrt(a) # Квадратный корень из " а "
# sur=math.asin(x) # Угол А в радианах
# su=sur*180/Pii # Угол А в градусах
print (uu)
uuuu=" ,,,, ,,,, ,,,, ,,,,, ,,,,, ,,,, ,,,,, ,,,,, ,,,,, "
print (uuuu)
print (uu)
u=" Площадь сечения = "
ss=str(Ss) # Преобразуем число в строку
u=u+ss
print (u)
print (uu)
u=" Момент инерции по оси Х-Х = "
ss=str(Jx) # Преобразуем число в строку
u=u+ss
print (u)
print (uu)
print (uu)
u=" ...... ...... ...... Конец рассчета ...... ...... ...... "
print (u)
print (uu)
print (uu)
input( ) # Ожидание нажима Ентер
print (uu)
# .............
# Конец программы.
Координаты точек на радиусной кривой
Программа бывает необходима при построении сегмента с радиусом
большой величины который построить непосредственной разметкой
сложно или невозможно из за мешающих препятствий.
Результаты расчета записываются в файл 'Rezult.txt'.
Листинг программы.
# -* coding: cp1251 -*-
import math # Подключили математический модуль
import sys # Подключили основные библиотеки
# ....... ....... ....... ...... ...... ....... ....... ......
Pii=math.pi # Вытащили число " Пи "
f = open('Rezult.txt', 'w') # Открыли файл для записи
# Записываем числа в текстовом виде
uu=" "
u=uu+"\n" # Добавим код перевода строки
f.write(u)
u1=" Расчет координат точек на радиусной кривой "
u=u1+"\n"
f.write(u)
uu=" "+"\n"
f.write(uu)
uuu=" ,,,,,,,,,, ,,,,,,,, ,,,,,,,, ,,,,,,,, ,,,,,,,, ,,,,,,,, "+"\n"
f.write(uuu)
f.write(uu)
print (uu)
u=" Построение большого радиуса методом подьема "
print (u)
print (uu)
u=" Размер по горизонтали отсчитывается от центра хорды "
print (u)
u=" от точки Х2 на хорде проводим перпендикуляр Нм расчитанной величины. "
print (u)
u=" При вводе размера по горизонту = нулю выход из программы "
print (u)
print (uu)
input( ) # Ожидание нажима Ентер
print (uu)
a=0.00000000
y=0.00000000
ug=0.00000000
ugg=0.00000000
R=0.00000000
hm=0.00000000
ht= 0.0000000
u=" Введите радиус "
print (u)
print (uu)
R=input( ) # Вводим число
R=float(R) # Принудительно в вещественное число
u=" Радиус заданной кривой = "
ss=str(R) # Преобразуем число в строку
Rad=u+ss
u=Rad+"\n"
f.write(u)
u=" Введите Хорду L "
print (u)
print (uu)
a=input( ) # Вводим число
a=float(a) # Принудительно в вещественное число
u=" Хорда максимальная заданная L = "
ss=str(a) # Преобразуем число в строку
Xord=u+ss
u=Xord+"\n"
f.write(u)
# Находим значения максимального прогиба при X2 = 0....
x=((R*R)-(a*a/4))
b=R-(math.sqrt(x)) # Квадратный корень из " x "
# b максимальный прогиб
u=" Подъем максимальный в центре хорды = "
ss=str(b) # Преобразуем число в строку
Progi=u+ss
u=Progi+"\n"
f.write(u)
x=(a/2)/R
y=math.asin(x)
v=math.cos(y)
aur=2*y
au=aur*180/Pii # Угол А в градусах
Lx= 0.0000001 # <Начальное значение>
while Lx>0:
# Далее Cдвиг четыре пробела в начале каждой строки
print (uu)
u=" Введите растояние от центра хорды до перпендикуляра X2 "
print (u)
print (uu)
Lx=input( ) # Вводим число
Lx=float(Lx)
u=" От центра хорды до точки X2 по оси Х-Х = "
ss=str(Lx) # Преобразуем число в строку
Xord=u+ss
u=Xord+"\n"
f.write(uu)
f.write(u)
x=(R*R)-(Lx*Lx)
z=math.sqrt(x)
y=R-z # Прогиб при хорде = Lx*2
ht=b-y # Расчитали величину подьема
u=" На растоянии от центра = "
ss=str(Lx) # Преобразуем число в строку
u=u+ss
print (u)
print (uu)
u=" Величина подьема ( перпендикуляра ) Hm = "
ss=str(ht) # Преобразуем число в строку
u=u+ss
print (u)
f.write(u)
f.write(uu)
print (uu)
u=" ================================================= "
print (u)
f.write(u)
print (uu)
input( ) # Ожидание нажима Ентер
К сожалению!!! По просьбе правообладателя доступна только ознакомительная версия...