The following examples use the vector concepts from chapter 2.
Contents:
from numpy import *
dtr = pi/180 # factor for degree-to-radian conversion
from matplotlib.pyplot import *
%matplotlib inline
Q = 64*dtr
R_mag = 260. # N
Fa = R_mag * cos(Q)
Fb = R_mag * sin(Q)
print ('Fa={} N and Fb={} N'.format(Fa,Fb))
Q1 = 67*dtr
Q2 = -47*dtr
R_mag = 280. # N
$F_{net,x} = F_{a,x} = F_a \cos \theta_2$
$F_{net,y} = F_{a,y} + F_b = F_a \sin \theta_2 + F_b$
Fnet_x = R_mag * cos(Q1)
Fnet_y = R_mag * sin(Q1)
Fa = Fnet_x / cos(Q2)
Fb = Fnet_y - Fa*sin(Q2)
print ('Fa magnitude=',Fa,'N')
print ('Fa direction=',Q2/dtr,'deg')
print ('Fb magnitude=',Fb,'N')
print ('Fb direction=',90.,'deg')
Alternatively, you could use the law of sines as follows:
phi1,phi2,phi3 = pi/2-abs(Q1), pi/2-abs(Q2), abs(Q1)+abs(Q2)
Fa = R_mag*sin(phi1)/sin(phi2)
Fb = R_mag*sin(phi3)/sin(phi2)
print ('angles are',phi1/dtr,phi2/dtr,phi3/dtr)
print ('Fa magnitude=',Fa,'N')
print ('Fb magnitude=',Fb,'N')
F = 48.0 # lb
Q = 27.*dtr
F_perp = F*sin(Q)
F_para = F*cos(Q)
print ('F_perp={} lb and F_para={} lb'.format(F_perp,F_para))
F1_mag, F2_mag = 3.7, 2.0 # kN
Q1, Q2 = (180+60)*dtr, (180-30)*dtr
Sum of $y$ forces equals zero. $F_{1y} +F_{2y} +F_{y} = 0$.
F1_y = F1_mag*sin(Q1)
F2_y = F2_mag*sin(Q2)
print ('Fy=',-F1_y-F2_y,'kN')
print ('Fx must be zero for smallest F magnitude')
$\vec R = \vec F_1 + \vec F_2 + \vec F$
$R^2 = (F_{1x} + F \cos \alpha)^2 + (F_{2y} + F \sin \alpha)^2$
alpha = 45*dtr
F1x = -11.0 #kN
F2y = -8.0 #kN
F = arange(0.,20.,0.1)
R2 = (F1x+F*cos(alpha))**2 + (F2y+F*sin(alpha))**2
plot(F,R2)
$\frac{d}{dF}R^2 = 2(F_{1x} + F \cos \alpha)\cos \alpha + 2(F_{2y} + F \sin \alpha)\sin \alpha =0$
$F_0 = - F_{1x} \cos \alpha - F_{2y} \sin \alpha$
F = -F1x*cos(alpha) - F2y*sin(alpha)
print ('min F=',F,'kN')
W = 219. # N
F = 82. # N
Q = 30*dtr
R = array((F,-W))
t = array((cos(Q),sin(Q)))
n = array((-sin(Q),cos(Q)))
Rt = dot(R,t)
Rn = dot(R,n)
print ('Rx=',R[0])
print ('Ry=',R[1])
print ('Rt=',Rt)
print ('Rn=',Rn)
Qmag, Pmag, Fmag = 6., 5., 3. # kN
Q = Qmag* array((-2.,2.,1)) / sqrt(4+4+1)
Pz = Pmag*cos(51*dtr)
Pxy = sqrt( Pmag**2 - Pz**2 ) # component of P in the xy plane
Px,Py = -Pxy*cos(30*dtr), Pxy*sin(30*dtr)
P = array((Px,Py,Pz))
F = Fmag* array(( cos(45*dtr), cos(60*dtr), cos(60*dtr) ))
R = Q+P+F
print ('Q=',Q,'kN')
print ('P=',P,'kN')
print ('F=',F,'kN')
print ('R=',R,'kN')
rOA = 2.*array(( 0.768, -0.384, 0.514 )) # km
rOB = 5.*array(( 0.744, 0.559, -0.380 )) # km
rAB = rOB - rOA
rAB_mag = sqrt(sum(rAB**2))
print ('distance rAB=',rAB_mag,'km')
radius = 155 # mm
b,h,d,z = 4, 3, 265, 245 # mm
Cz = 350. # mm
Fmag = 100. # N
First find $\vec{r}_{CD} = \vec{r}_{OD} - \vec{r}_{OC}$. Then convert this to a unit vector and find $\vec{r}_{CE}= d \; \hat{u}_{CD}$.
rOC = array((0.,0.,Cz))
rOD = radius * array((b,h,0)) / sqrt(b**2+h**2)
rCD = rOD - rOC
uCD = rCD / sqrt(sum(rCD**2))
rCE = d*uCD
Next find unit vector $\hat{u}_{GE}$, then $\vec{F} = - F_{mag} \hat{u}_{GE}$.
rOG = array(( 0., radius, z ))
rOE = rOC + rCE
rGE = rOE - rOG
uGE = rGE / sqrt(sum(rGE**2))
F = -Fmag * uGE
Finally dot products will give the desired solution.
Fpara_CD = dot(F,uCD)
Fpara = Fpara_CD * uCD
Fperp = F - Fpara
Fperp_mag = sqrt(sum(Fperp**2))
print ('Fpara in direction of uCD=', Fpara_CD, 'N')
print (' (negative implies bead slides toward C)')
print ('magnitude of Fperp=', Fperp_mag, 'N')
print ('Fpara=', Fpara, 'N')
print ('Fperp=', Fperp, 'N')
Note $\vec{F}_{\parallel}$ is implicitly defined to be
$$F_{\parallel} = \vec{F} \cdot \hat{u}_{CD}$$rOB = array(( -45., 0., 130 )) # in
rOC = array(( 120., 95., 0. )) # in
rOD = array(( 0., 95., 50. )) # in
f = 1./4 # fraction of the distance up the chute
F_chute = 450. # lb
$F_{chute} = \vec{F} \cdot \hat{u}_{CD} = F \hat{u}_{AB} \cdot \hat{u}_{CD} $
rCD = rOD - rOC
uCD = rCD / sqrt(sum(rCD**2))
rOA = rOC + f*rCD
rAB = rOB - rOA
uAB = rAB / sqrt(sum(rAB**2))
F = F_chute / dot(uAB,uCD)
print ('cable force=',F,'lb')