def cal(): C = 100 R = 50 a = 5 b = 10 T = var('T') g(T) = (C - R * (b - T)/(b - a) * e ^ (-2 * T / (a + b))) / (T - (T - a)^2 / (2 * (b - a))) gprime = derivative(g,T) P = plot(g,(T,0,50),color="blue") Q = plot(gprime,(T,0,50),color="red") i = 0 mins = 1000000000000000000 mini = -1 while i <= 10000: point = g(i).n(30) if point < mins: mins = point mini = i i += 1 i_left = mini - 1 i_right = mini + 1 i = i_left # show(i_left,i_right) mins = 1000000000000000000 mini = -1 while i <= i_right: point = g(i).n(30) if point < mins: mins = point mini = i i += 0.00001 show("min_g = ", mins) show("min_T = ", mini) show(g) show(P) show(gprime) show(Q) cal()
min_g = −1.0380293×107
min_T = 18.6602599999750
T ↦ −(T−5)2−10T100((T−10)e(−152T)+10)
T ↦ 3((T−5)2−10T)20(2(T−10)e(−152T)−15e(−152T))+((T−5)2−10T)2200((T−10)e(−152T)+10)(T−10)