1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| using Unitful, QuadGK, Plots, PlotThemes
gr()
theme(:juno)
#=
Dans Julia, il est possible de calculer des intégrales numériquement
en tenant compte des unités de mesure. Par exemple, si nous intégrons
une vitesse sur un intervalle de temps, nous obtiendrons la distance
parcourue.
=#
a = 0.143u"m/s^2"
# vf = vi + at avec vi = 0
# on veut le résultat en kilomètre au lieu de m.
d = uconvert(u"km", quadgk(x -> a*x, 0u"s", 145u"s")[1])
@show d
# le temps de parcours en seconde
t = (0:145)u"s"
# on veut la vitesse en kilomètre par heure au temps t en seconde.
v = [uconvert(u"km/hr", a*x) for x in t]
@show t
@show v
# plot ne prend que des chiffres sans unité, on utilise ustrip()
plot(ustrip(t), ustrip(v), ylabel="km/hr", xlabel="s", grid=true, gridwidth=3, legend=:none, title="Vitesse au temps t") |