In [192]:
import math

# Input parameters
Wc = 54   #weight carrier in Ton
Wu = 5   #weight superstructure in Ton
Wb = 5   #weight of boom in Ton
W = 25    #weight of load in Ton
Wd = 2    #distance Cog Counter weight to rotational Axis
d = 7     #lifting radius in m
du = 1.5  #horizonatl distance of CoG of superstructure to rotatioal axis in m
alpha = math.radians(30)  # Convert degrees to radians
x0 = 0.5  #distance between centroid outrigger to rotational axis in m
dc = 1    #horizonatl distance of CoG of carrier to rotatioal axis in m
dl = 8.5  #distance between the outrigger lenthwise (center to center) in m
dt = 8.5  #distance of boom slew from crane rear to the right front

R_right_front1 = (
    (Wc + Wu + Wb + W / 4) + 
    (1 / 2) * (
        ((W * d + Wu * du) * math.sin(alpha) / dt) - 
        (((W * d + Wu * du) * math.cos(alpha)) + 
         (Wc + Wu + Wb + W) * x0 + 
         Wc * Wd) / dl
    )
)

R_left_front2 = (
    (Wc + Wu + Wb + W / 4) - 
    (1 / 2) * (
        ((W * d + Wu * du) * math.sin(alpha) / dt) + 
        (((W * d + Wu * du) * math.cos(alpha)) + 
         (Wc + Wu + Wb + W) * x0 + 
         Wc * Wd) / dl
    )
)

R_right_rear2 = (
    (Wc + Wu + Wb + W / 4) + 
    (1 / 2) * (
        ((W * d + Wu * du) * math.sin(alpha) / dt) + 
        (((W * d + Wu * du) * math.cos(alpha)) + 
         (Wc + Wu + Wb + W) * x0 + 
         Wc * Wd) / dl
    )
)

R_left_rear2 = (
    (Wc + Wu + Wb + W / 4) - 
    (1 / 2) * (
        ((W * d + Wu * du) * math.sin(alpha) / dt) - 
        (((W * d + Wu * du) * math.cos(alpha)) + 
         (Wc + Wu + Wb + W) * x0 + 
         Wc * Wd) / dl
    )
)

print(f"R_right_front1: {R_right_front1:.2f} Ton")
print(f"R_left_front2: {R_left_front2:.2f} Ton")
print(f"R_left_rear2: {R_left_front2:.2f} Ton")
print(f"R_left_front2: {R_left_front2:.2f} Ton")
R_right_front1: 57.35 Ton
R_left_front2: 46.61 Ton
R_left_rear2: 46.61 Ton
R_left_front2: 46.61 Ton
In [ ]: