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.
Comece com o resultado
O dia sintético fornece VPD do ar ≈ 1,584 kPa e DLI = 11,52 mol m⁻² dia⁻¹. A temperatura é de 25 °C e a umidade relativa de 50% durante todo o período. O PPFD é de 200 das 8h até a meia-noite seguinte e zero nos demais períodos. Esses são dados fictícios para verificação de unidades e integração, não medições da instalação.
| Alteração | Resultado esperado | Interpretação |
|---|---|---|
| Linha de base | VPD ≈ 1,584; DLI 11,52 | Cálculos independentes |
| UR para 100% | VPD do ar 0 | Saturação nesta equação |
| PPFD do período iluminado para 100 | DLI 5,76 | Metade da quantidade de luz |
| Excluir o intervalo 8–9 | Erro | Dados ausentes não representam escuridão |
O VPD do ar precisa de temperatura e umidade
Use a relação de pressão de vapor de saturação FAO-56, equação 11, com T em °C e pressão em kPa:
A 25 °C, uma pressão de saturação arredondada de 3,168 kPa resulta em aproximadamente 1,584 kPa a 50% de UR. Aplicar esta equação não linear uma única vez às médias diárias de entrada geralmente difere da média dos valores calculados em cada ponto de tempo.
Nenhuma temperatura foliar é fornecida, portanto, este não é um VPD folha-ar. Também não é um modelo de transpiração. Consulte a discussão sobre VPD da MSU antes de estender a interpretação às respostas das plantas.
O DLI pondera cada intervalo pela sua duração
Seguindo a explicação sobre DLI da Purdue, integre o PPFD ao longo de um dia. Cada linha do arquivo CSV fornece um PPFD médio do intervalo, não uma leitura instantânea para interpolação trapezoidal.
As durações estão em segundos: 200 × 16 × 3600 / 1e6 = 11.52 . Dividir um intervalo sem alterar sua média deixa o total inalterado.
| Intervalo (UTC+09:00) | Horas | PPFD | Contribuição (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–próximo 00 | 9 | 200 | 6,48 |
Uma média de contagem de linhas multiplicada por 24 horas está incorreta para esses intervalos desiguais. Medições instantâneas precisam de uma interpolação e uma política de intervalo máximo especificadas separadamente.
Contrato de entrada
| Coluna | Significado | Intervalo de ensino aceito |
|---|---|---|
| início / fim | Timestamps ISO 8601 com deslocamento UTC | Intervalos contíguos de meia-noite a meia-noite com um deslocamento fixo |
| temp_c | Temperatura do ar considerada constante dentro do intervalo, °C | 0–50 |
| rh_pct | Umidade relativa nessa temperatura, % | 0–100 |
| ppfd_umol_m2_s | Média do intervalo, μmol m⁻² s⁻¹ | 0–3000 |
Os limites de temperatura e luz são escolhas do modelo didático, não recomendações de cultivo ou limites de validade universal. Valores em branco, NaN, infinito, luz negativa, sobreposições, lacunas, linhas invertidas e dias incompletos são rejeitados. As transições para o horário de verão estão fora do modelo fixo de 24 horas. Medições reais também exigem localização, calibração e registros de resposta do sensor.
Execute o experimento completo
Extraia o arquivo ZIP do experimento, em seguida, execute estes comandos dentro do diretório. Python 3.10+ e a biblioteca padrão são suficientes; nenhum pacote ou acesso à rede é necessário. O painel acima funciona sem instalar Python localmente. Os passos seguintes são opcionais.
python3 generate.py
python3 experiment.py synthetic.csv > result.json
python3 -m unittest -v
generate.py recria o CSV sintético; Salve uma cópia separada antes de editar as entradas. O analisador gera como saída o VPD do intervalo e a luz acumulada em JSON. Compare expected.json com os hashes e o contrato do arquivo em manifest.json.
O núcleo do cálculo está abaixo; experiment.py contém o executável completo, incluindo a validação.
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
Alterar, quebrar e verificar
-
Defina todos os valores de UR para 100. O VPD torna-se zero; o DLI permanece 11,52.
-
Reduza pela metade o PPFD do período iluminado. O DLI torna-se 5,76, enquanto o VPD permanece inalterado.
-
Exclua um intervalo iluminado. O analisador rejeita a lacuna em vez de retornar um total enganoso.
- Insira RH
0.5. O valor aceito é 0,5%, resultando em aproximadamente 3,15 kPa. Se a sua intenção era 50%, as verificações de intervalo não detectarão esse erro de unidade.
Os 12 testes fornecidos abrangem valores de referência independentes arredondados, saturação, alterações proporcionais de luz, divisão de intervalos, entradas inválidas e cobertura ausente. A aprovação nesses testes não valida a cultura. DLI igual não implica crescimento igual.
Continue com medição de temperatura e amostragem: identifique quais informações seriam perdidas ao converter leituras reais para este formato de intervalo.

Comentários
Entre na sua conta para continuar.
Ainda não há dados.