Теперь я работал над этой программой, чтобы имитировать движение механизма слайдер-кривошип в python. Я столкнулся с тупиком, когда получил эту ошибку. Именно этот метод вызывает ошибку без причины.TypeError: объект 'int' не может быть вызван, механизм слайдера-кривошипа
def returnSliderAcceleration(a,b,theta_1,omega_1,alpha_1):
rad_temporary = theta_1 * np.pi/180
rad_temporary_2 = returnConnectorAngle(a,b,theta_1)
omega_2 = returnConnectorVelocity(a,b,theta_1,omega_1)
alpha_2 = returnConnectorAcceleration(a,b,theta_1,omega_1,alpha_1)
part_1 = a((alpha_1 * np.sin(rad_temporary)) + ((omega_1**2)*np.cos(rad_temporary)))
part_2 = b((alpha_2 * np.sin(rad_temporary_2)) + ((omega_2**2)*np.cos(rad_temporary_2)))
slider_acceleration = -1*(part_1 + part_2)
return slider_acceleration
другие методы она использует являются:
def returnConnectorAngle(a,b,theta_1): #Returns the angle(in degrees) made by the connector corresponding to the crank angle, CCW taken as positive
rad_temporary = theta_1 * np.pi/180
x = (a/b) * np.sin(rad_temporary)
connector_angle = np.arcsin(x)
return (connector_angle* np.pi/180)
def returnConnectorVelocity(a,b,theta_1,omega_1): #Returns the angular velocity of the connector, CCW taken as positive
rad_temporary = theta_1 * np.pi/180
rad_temporary_2 = returnConnectorAngle(a,b,theta_1)
Nr = a * omega_1 * np.cos(rad_temporary)
Dr = b * np.cos(rad_temporary_2)
connector_velocity = Nr/Dr
return connector_velocity
def returnConnectorAcceleration(a,b,theta_1,omega_1,alpha_1): #Returns the angular acceleration of the connector arm, CCW taken as positive
rad_temporary = theta_1 * np.pi/180
rad_temporary_2 = returnConnectorAngle(a,b,theta_1)
omega_2 = returnConnectorVelocity(a,b,theta_1,omega_1)
Nr_1 = a * ((alpha_1 * np.cos(rad_temporary)) - ((omega_1**2)*np.sin(rad_temporary)))
Dr_1 = b * np.cos(rad_temporary_2)
part_2 = (omega_2**2) * np.tan(rad_temporary_2)
return (Nr_1/Dr_1) + part_2
Ошибка:
slider_acceleration = -1*(a((alpha_1 * np.sin(rad_temporary)) + ((omega_1**2)*np.cos(rad_temporary)))+ b((alpha_2 * np.sin(rad_temporary_2)) + ((omega_2**2)*np.cos(rad_temporary_2))))
TypeError: 'int' object is not callable
Отформатируйте код, это была реальная боль, делая так ... –
мне очень жаль. Я новичок в этом месте, и я просто редактировал, когда вы сделали это для меня. Спасибо! –