Contents — find the section you need
Change parameters and verify
Open the panel, then press Run to load Python. You can stop execution and reset parameters. Results are computed on this device. No Python installation is required.
Local execution steps below are optional for reproducing the source results; they are not required for the browser experiment.
The experiment controls are in English.
Comencemos con el resultado
El día sintético arroja VPD del aire ≈ 1,584 kPa y DLI = 11,52 mol m⁻² día⁻¹. La temperatura es de 25 °C y la humedad relativa del 50 % en todo momento. La PPFD es de 200 desde las 08:00 hasta la medianoche siguiente, y cero en los demás casos. Estos son datos de entrada ficticios para verificar las unidades y la integración, no mediciones de la instalación.
| Cambio | Resultado esperado | Interpretación |
|---|---|---|
| Línea base | VPD ≈ 1,584; DLI 11,52 | Cálculos independientes |
| HR al 100 % | VPD del aire 0 | Saturación en esta ecuación |
| PPFD del período iluminado al 100 | DLI 5,76 | La mitad de la cantidad de luz |
| Eliminar el intervalo 08-09 | Error | Los datos faltantes no corresponden a oscuridad |
Lea la descripción general de CEA para conocer los límites del sistema. Este laboratorio calcula variables ambientales; no predice el rendimiento ni controla equipos.
La VPD del aire requiere temperatura y humedad
Utilice la relación de presión de vapor de saturación FAO-56, ecuación 11, con T en °C y presión en kPa:
A 25 °C, una presión de saturación redondeada de 3,168 kPa equivale aproximadamente a 1,584 kPa con un 50 % de HR. Aplicar esta ecuación no lineal una sola vez a los datos de entrada promedio diarios generalmente difiere del promedio de los valores calculados en cada instante de tiempo.
No se proporciona la temperatura de la hoja, por lo que no se trata de la VPD hoja-aire. Tampoco es un modelo de transpiración. Consulte la discusión sobre VPD de MSU antes de extender la interpretación a las respuestas de las plantas.
El DLI pondera cada intervalo según su duración.
Siguiendo la explicación sobre DLI de Purdue, integre el PPFD a lo largo del día. Cada fila del CSV proporciona un PPFD medio del intervalo, no una lectura instantánea para la interpolación trapezoidal.
Las duraciones se expresan en segundos: 200 × 16 × 3600 / 1e6 = 11.52. Dividir un intervalo sin cambiar su media deja el total sin cambios.
| Intervalo (UTC+09:00) | Horas | PPFD | Contribución (mol m⁻²) |
|---|---|---|---|
| 00–05 | 5 | 0 | 0 |
| 05–08 | 3 | 0 | 0 |
| 08–09 | 1 | 200 | 0.72 |
| 09–15 | 6 | 200 | 4.32 |
| 15–siguiente 00 | 9 | 200 | 6.48 |
Un promedio de recuento de filas multiplicado por 24 horas es incorrecto para estos intervalos desiguales. Las mediciones instantáneas requieren una interpolación y una política de intervalo máximo especificadas por separado.
Contrato de entrada
| Columna | Significado | Rango de enseñanza aceptado |
|---|---|---|
| inicio / fin | Marcas de tiempo ISO 8601 con desplazamiento UTC | Intervalos contiguos de medianoche a medianoche con un desplazamiento fijo |
| temp_c | Temperatura del aire asumida constante dentro del intervalo, °C | 0–50 |
| rh_pct | Humedad relativa a esa temperatura, % | 0–100 |
| ppfd_umol_m2_s | Media del intervalo, μmol m⁻² s⁻¹ | 0–3000 |
Los límites de temperatura y luz son opciones del modelo didáctico, no recomendaciones de cultivo ni límites de validez universal. Se rechazan los valores en blanco, NaN, infinito, luz negativa, superposiciones, huecos, filas invertidas y días incompletos. Las transiciones al horario de verano quedan fuera del modelo fijo de 24 horas. Las mediciones reales también requieren la ubicación, la calibración y los registros de respuesta del sensor.
Ejecutar el experimento completo
Extraiga el ZIP del experimento y ejecute estos comandos dentro de su directorio. Basta con Python 3.10+ y la biblioteca estándar; no se requieren paquetes ni acceso a la red. El panel superior funciona sin instalar Python localmente. Los pasos siguientes son opcionales.
python3 generate.py
python3 experiment.py synthetic.csv > result.json
python3 -m unittest -v
generate.py recrea el CSV sintético; guarde una copia aparte antes de editar las entradas. El analizador genera la VPD del intervalo y la luz acumulada en formato JSON. Compara expected.json con los hashes de archivo y el contrato en manifest.json.
El núcleo del cálculo se encuentra a continuación; experiment.py contiene el ejecutable completo, incluyendo la validación.
es = 0.6108 * math.exp(17.27 * temp_c / (temp_c + 237.3))
air_vpd_kpa = es * (1 - rh_pct / 100)
dose_mol_m2 += ppfd * interval_seconds / 1_000_000
Modificar, romper y verificar
-
Establece cada valor de RH en 100. La VPD se convierte en cero; el DLI permanece en 11,52.
-
Reduce a la mitad el PPFD del período de iluminación. El DLI se convierte en 5,76 mientras que la VPD permanece sin cambios.
-
Elimina un intervalo de iluminación. El analizador rechaza el intervalo en lugar de devolver un total engañoso.
-
Introduce RH
0.5. Se acepta como 0,5 %, lo que da aproximadamente 3,15 kPa. Si pretendía usar el 50 %, las comprobaciones de rango no pueden detectar ese error de unidad.
Las 12 pruebas incluidas abarcan valores de referencia independientes redondeados, saturación, cambios de luz proporcionales, división de intervalos, entradas no válidas y cobertura faltante. Superarlas no valida el cultivo. Un DLI igual no implica un crecimiento igual.
Continúe con la medición de temperatura y el muestreo: identifique qué información se perdería al convertir las lecturas reales a este formato de intervalo.

Comentarios
Inicia sesión para continuar.
Todavía no hay datos.