fork download
  1. import math
  2.  
  3. def predict_shelf_life(t_ref, T_ref, T, Ea):
  4. """
  5. + Input:
  6. - t_ref (float): Thời hạn sử dụng ở nhiệt độ tham chiếu T_ref (VD: số ngày). Ràng buộc: t_ref > 0.
  7. - T_ref (float): Nhiệt độ tham chiếu (đơn vị: độ C).
  8. - T (float): Nhiệt độ bảo quản thực tế cần dự đoán (đơn vị: độ C).
  9. - Ea (float): Năng lượng hoạt hóa của phản ứng suy thoái (đơn vị: J/mol). Ràng buộc: Ea > 0.
  10.  
  11. + Output:
  12. - (float): Trả về thời hạn sử dụng (shelf-life) dự đoán ở nhiệt độ T, có cùng đơn vị đo với tham số t_ref.
  13.  
  14. + Ý nghĩa của hàm:
  15. - Hàm dùng để dự đoán thời hạn sử dụng của một sản phẩm khi được bảo quản ở một nhiệt độ mới, dựa vào các thông số động học của phương trình Arrhenius.
  16.  
  17. + Thuật toán, công thức nếu có:
  18. - Bước 1: Chuyển đổi nhiệt độ T_ref và T từ thang đo Celsius (độ C) sang Kelvin (độ K) bằng công thức: K = C + 273.15.
  19. - Bước 2: Sử dụng hằng số khí lý tưởng R = 8.314 J/(mol*K).
  20. - Bước 3: Áp dụng công thức suy ra từ phương trình Arrhenius để tính hạn sử dụng:
  21. t = t_ref * exp( (Ea / R) * (1/T_K - 1/T_ref_K) )
  22. """
  23.  
  24. # Hằng số khí lý tưởng
  25. R = 8.314
  26.  
  27. # Đổi sang nhiệt độ Kelvin
  28. T_ref_K = T_ref + 273.15
  29. T_K = T + 273.15
  30.  
  31. # Tính toán shelf-life
  32. t = t_ref * math.exp((Ea / R) * ((1 / T_K) - (1 / T_ref_K)))
  33.  
  34. return t
Success #stdin #stdout 0.11s 14168KB
stdin
# --- Ví dụ chạy thử (Test) ---
if __name__ == "__main__":
    # Sản phẩm có hạn sử dụng 30 ngày ở 25 độ C, năng lượng hoạt hóa 80,000 J/mol.
    # Tính hạn sử dụng nếu bảo quản ở 15 độ C.
    t_moi = predict_shelf_life(30, 25, 15, 80000)
    print(f"Hạn sử dụng dự đoán ở 15 độ C là: {t_moi:.2f} ngày")
stdout
Standard output is empty