Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -788,32 +788,32 @@ class NutrientCalculator:
|
|
788 |
return labels.get(element, element)
|
789 |
|
790 |
def calculate(self):
|
791 |
-
|
792 |
-
|
793 |
-
|
794 |
|
795 |
-
|
796 |
-
|
797 |
|
798 |
-
|
799 |
-
|
800 |
|
801 |
-
|
802 |
-
|
803 |
|
804 |
-
|
805 |
-
|
806 |
|
807 |
-
|
808 |
-
|
809 |
|
810 |
-
|
811 |
-
|
812 |
|
813 |
-
|
814 |
-
|
815 |
-
|
816 |
-
|
817 |
|
818 |
def _apply(self, fert_name, main_element, required_ppm):
|
819 |
if required_ppm <= 0:
|
|
|
788 |
return labels.get(element, element)
|
789 |
|
790 |
def calculate(self):
|
791 |
+
try:
|
792 |
+
# Вносим магний через компенсацию
|
793 |
+
self._compensate_element("Mg")
|
794 |
|
795 |
+
# Вносим кальций через компенсацию
|
796 |
+
self._compensate_element("Ca")
|
797 |
|
798 |
+
# Вносим фосфор через компенсацию
|
799 |
+
self._compensate_element("P")
|
800 |
|
801 |
+
# Вносим аммонийный азот напрямую
|
802 |
+
self._apply("Аммоний азотнокислый", "N (NH4+)", self.target_profile['N (NH4+)'])
|
803 |
|
804 |
+
# Компенсируем нитратный азот через компенсацию
|
805 |
+
self._compensate_element("N (NO3-)")
|
806 |
|
807 |
+
# Компенсируем серу через компенсацию
|
808 |
+
self._compensate_element("S")
|
809 |
|
810 |
+
# Компенсируем калий через компенсацию
|
811 |
+
self._compensate_element("K")
|
812 |
|
813 |
+
return self.results
|
814 |
+
except Exception as e:
|
815 |
+
print(f"Ошибка при расчёте: {str(e)}")
|
816 |
+
raise
|
817 |
|
818 |
def _apply(self, fert_name, main_element, required_ppm):
|
819 |
if required_ppm <= 0:
|