Skip to content

Instantly share code, notes, and snippets.

@raydsameshima
Last active September 17, 2021 14:29
Show Gist options
  • Save raydsameshima/9a95a379bb6a4330c8924e50b5d27e05 to your computer and use it in GitHub Desktop.
Save raydsameshima/9a95a379bb6a4330c8924e50b5d27e05 to your computer and use it in GitHub Desktop.
chapter 02 problems
print("Problem 3, 12, 18, 23, 44, 46, 66")
print("Problem 3:")
print("(a) distance traveled:", abs(10-2) + abs(8-10) + abs(11-8), " [m]")
print("(b) magnitude of the displacement:", abs(11-2), " [m]")
# (2.1)
print("(c) displacement:", 11-2, " [m].")
print("Problem 12:")
l = 1.1*units.length.meter
v = 18*(units.length.meter/units.time.second)
time = l/v
print(time)
print("Problem 18:")
a = 1.40 * (units.length.meter/(units.time.second)^2)
t = var("t")
# sol=solve(a*(t*units.time.second) == 2.00*(units.length.meter/units.time.second), [t])
sol=solve(a*t == 2.00*(units.length.meter/units.time.second), [t])
s= sol[0]
s = 1.0*s.rhs()
print(s)
a = var("a")
sol = solve(a*(0.800*units.time.second) == -2.00*(units.length.meter/units.time.second), [a])
s = sol[0]
s = 1.0*s.rhs()
print(s)
print("Problem 23:")
a = 1.35*(units.length.meter/(units.time.second)^2)
v = 80.0*(units.length.kilometer/units.time.hour)
t = var("t")
sol = solve( a*t == v, [t])
s = sol[0]
s = 1.0*s.rhs()
print(s.convert(units.time.second), s.convert(units.time.minute))
da = -1.65*(units.length.meter/(units.time.second)^2)
t = var("t")
sol = solve( v + da*t == 0, [t])
s = sol[0]
s = 1.0*s.rhs()
print(s.convert(units.time.second), s.convert(units.time.minute))
et = 8.30*units.time.second
eda = var("eda")
sol = solve( v + eda*et == 0, [eda])
s = sol[0]
s = 1.0*s.rhs()
print(s.convert((units.length.meter/(units.time.second)^2)))
print("Problem 44:")
g = 9.80*(units.length.meter/(units.time.second)^2)
vi = 1.40*(units.length.meter/units.time.second)
t = 1.8*units.time.second
print("(a): ", g, vi, t)
print("(b): ")
h = var("h")
sol = solve( h == vi*t + g/2*t^2, [h])
s = sol[0]
s = 1.0*s.rhs()
print(s, n(s/units.length.meter, digits=3))
print("Problem 46:")
vi = 4.00*(units.length.meter/units.time.second)
hi = 1.80*units.length.meter
t = var("t")
sol = solve( 0 == hi + vi*t + (-g)*t^2/2, [t])
t0 = sol[1]
t0 = t0.rhs()
print(t0.convert())
print(n( t0/units.time.second, digits=3))
t = var("t")
sol = solve( 0 == vi + (-g)*t, [t])
s = sol[0].rhs()
print(1.0*s)
print( vi*s + (-g)*s^2/2 )
vf = vi + (-g)*t0
vf = 1.0*vf
print(vf)
print(n(vf/(units.length.meter/units.time.second), digits=3))
print("Problem 66:")
@raydsameshima
Copy link
Author

print("problem 01_01\n")

x = units.length.kilometer/units.time.hour
y = 100x
print(y, " is equivalent to:" )
print( 1.0
y.convert(units.length.meter/units.time.second))
print( 1.0*y.convert(units.length.mile/units.time.hour))

print("problem 01_17\n")
print("(a):", n(106.798.2/(46.2101.01), digits=3))

print("(b):", n((18.7)^3, digits=3))

print("(c):", n(1.60e-19*3712, digits=3))

@raydsameshima
Copy link
Author

https://openstax.org/books/college-physics/pages/3-problems-exercises

print("problems in chapter 3\n")

print("problem 03_05\n")
a = 12.0 * vector([cos(110/180pi), sin(110/180pi)])
print("vector a = ", a )
print("vector a = ", n(a, digits=3) )

b = 20.0 * vector([cos(220/180pi), sin(220/180pi)])
print("vector b = ", b )
print("vector b = ", n(b, digits=3) )

r = a+b
print("r is:", n( r, digits=3 ))
print("distance is: ", n( r.norm(), digits=3 ))
print("direction is: ", n( atan2(r[1],r[0])*180/pi, digits=3 ))

print("prob 03_16\n")
r = vector([-18.0, 25.0])
print("distance is: ", n( r.norm(), digits=3), " [m]")
print("direction is: ", n( atan2(r[1],r[0])*180/pi, digits=3 ), " [deg]")

print("prob 03_18\n")
r = 7.50 * vector([cos((90-15)/180 * pi), sin((90-15)/180 * pi)])
print("r is: ", n(r, digits=3))
print("zig-zag distance is: ", n(r[0] + r[1], digits=3) )

print("prob 03_24\n")
a = 40.0 * vector([cos(60/180pi), sin(60/180pi)])
b = 30.0 * vector([cos(15/180pi), sin(15/180pi)])
r = a+b
print(n(r.norm(), digits=3))
print("direction is: ", n( atan2(r[1],r[0])*180/pi, digits=3 ), " [deg]")

print("prob 03_25\n")
magnitude_of_v = 50.0units.length.meter/units.time.second
v = magnitude_of_v
vector([cos(30/180pi), sin(30/180pi)])
g = 9.80units.length.meter/(units.time.second^2)
t = 3.00
units.time.second
v_three_sec_later = vector([ v[0]t, v[1]t - 1/2gt^2])
print( v_three_sec_later )
print(n(v_three_sec_later/units.length.meter, digits=3))

t = var('t')
def projectile(t):
return( 50.0vector([cos(30/180pi), sin(30/180*pi)])t + vector([0, -9.80t^2/2]))
p = parametric_plot( projectile(t), (t,0,4))
p += point( (projectile(1),projectile(2),projectile(3), projectile(4)), color='red', pointsize=20)
p += text( n(projectile(3), digits=3), projectile(3) + vector([0,3]), color='red')
p.show()

print("prob 03_26\n")

t = var('t')

def projectile(t):

return( vector([16.0,12.0])t + vector([0, -9.80t^2/2]))

dft = derivative( projectile(t), t)

f = vector([16.0,12.0])t + vector([0, -9.80t^2/2])
dft = derivative(f, t)
print("the velocity vector is: ", dft)

sol = solve( projectile(t)[1], t)

sol = solve( f[1], t)
s = sol[0].rhs()
print("(b) at s = ", n(s,digits=3), " [sec], it will hit the ground.")
p = parametric_plot( f, [t,0,4])
p += point( f.subs(t == s), color='red', pointsize=20)
p += point( f.subs(t == s/2), color='blue', pointsize=20)
p.show()

dfs = dft.subs( t == s)
print("velocity at s= ", n(s,digits=3), " [sec]: ", n(dfs, digits=4))
print("(a) the speed is: ", n(dfs.norm(), digits=4))

print("the coordinate of the highest point is: ",n(f.subs(t==s/2), digits=4))

print("prob 03_27\n")

t = var('t')
v0x = var('v0x')
f = vector([0,60]) + vector([v0x, 0])*t + vector([0,-9.80/2])*t^2
s = solve( f[1] == 0, t)
s = s[1].rhs()
print("(a) ", s, " [sec], i.e., ", n(s, digits=3), " [sec]")

fs = f.subs(t==s)
v = solve( fs[0]-100, v0x )
v = v[0].rhs()
print("(b) ", v, " = ", n(v,digits=3), " [m/sec]")
fsol = f.subs( v0x==v)

p = parametric_plot( fsol, [t,0, s+1])
p += point( fsol.subs(t==s), color='red', pointsize=20)

df = derivative( fsol, t)
dfs = df.subs(t==s)
print("(c) ", dfs[1], " = ", n(dfs[1], digits=3) )
print("(d) velocity and speed: ", dfs, n(dfs.norm(), digits=3) )

p.show()

print("prob 03_43\n")
v = vector([cos(pi/4), sin(pi/4)])30t + vector([0,-9.80/2])*t^2
s = solve(v[1] == 0, t)
s = s[0].rhs()
print("maximum distance can be achieved 45 deg: ", n(v[0].subs(t==s), digits=3), " [m]" )

@raydsameshima
Copy link
Author

reset()

print("prob 04_06\n")
decel = 196*units.length.meter/(units.time.second)**Integer(2)
mass = Integer(2100)units.mass.kilogram
f = var("f")
s =solve ( f == mass
decel, f )
s = s[Integer(0)].rhs()
s = s.convert(units.force.newton)
print("the force is: ", s )

print("prob 04_13\n")
weight_on_moon = 250units.force.newton
g_moon = 1.625
units.length.meter/(units.time.second)^2
m = var("m")
sol = solve( m*g_moon == weight_on_moon, m)
s =sol[0].rhs()
s = s.convert(units.mass.kilogram)
print("the mass is: ", s)

mass = s/units.mass.kilogram
print("i.e., ", mass.n(digits=3))

print(massunits.mass.kilogram g_moon)

print("prob 04_20\n")
mass = 60.0units.mass.kilogram
g = 9.80
units.length.meter/(units.time.second)^2
f = mass*g
print("(a): ", f.convert(units.force.newton))

a = 1.50units.length.meter/(units.time.second)^2
f2 = mass
(g+a)
print("(b): ", f2.convert(units.force.newton))

print("prob 04_22\n")
weight = 55*units.force.newton
mass_total = weight/g
print("(a): ", mass_total.convert())

t1, t2 = var("t1 t2")
eq1 = t1==weight
eq2 = t2==t1+ (0.500*units.mass.kilogram)*g
sol = solve([eq1,eq2], [t1,t2])
t1 = t1.subs(sol)
print("(b): ", t1)
t2 = t2.subs(sol)
t2 = t2.convert(units.force.newton)
print("(c): ", t2, " i.e., ", n(t2/units.force.newton, digits=3))

print("(d): ")

print("prob 04_35\n")
print("(a): ")

theta = 35units.angles.degree
f = 60.0
units.force.newton
F = var("F")
eqn = f == F*cos( theta.convert(units.angles.radian)/units.angles.radian)
sol = solve( eqn, F )
F = F.subs(sol)/units.force.newton
print("(b): ", F.n(digits=3), " newton")

print("prob 04_41\n")
F_total = var("F_total")

theta = 20units.angles.degree
F_total = 2
200*units.force.newton * cos(theta.convert(units.angles.radian)/units.angles.radian)
F_total = F_total.convert(units.force.newton)
print("the total force is: ", F_total, " i.e., ", n(F_total/units.force.newton, digits=3) )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment