Cálculo de Manejo 1
Módulo responsável pelos cálculos realizados no back-end das telas:
- Lançamento
- Relatório de parcelas atuais
- Relatório de parcelas histórico
- Preciso Irrigar
- Analisar
- Planejamento
Campos do Módulo
Excesso total (cm)
O excesso de irrigação e chuva recebido pela cultura em milímetro;
1° Se estiver no primeiro dia de plantio:
precipitação efetiva(é uma função) + irrigação(é o valor imputado no lançamento diário)*Eficiência de irrigação(é uma função) - déficit inicial(é uma função);
Se não :precipitação efetiva(é uma função) + irrigação(é o valor imputado no lançamento diário)*Eficiência de irrigação(é uma função) - (déficit do dia anterior + etc do dia anterior)|
Excesso Total (mm)
O excesso de irrigação e chuva recebido pela cultura em milímetro. Buscar o valor do excesso total(cm)(é uma função) e dividir por 10.
Fase da Cultura
Primeiro cálculo a ser realizado.
Tipo cultura
Fase fenológica da cultura
O cálculo da fase só é feito a partir da data de início do plantio, se a data de início de manejo menor que a data de plantio não é necessário realizar os cálculos, apenas gravar as informações dos campos da tela de lançamento diário.
function getFaseAtual() {
$atualFase;
if($atualFase) return $atualFase;
$inicio = substr(datadeplantio);
$iniciom = substr(datainicio);
$diaspassados = diasPassados($inicio, $global[day])+1;
$diaspassadosm = diasPassados($iniciom, $global['day'])+1;
function dias_passados() {
return ['diaspassados'];
}
function diasPassados($data_inicial, $data_final) {
$data_inicial=substr($data_inicial,0,10);
$data_final=substr($data_final,0,10);
list($year, $month, $day) = explode("-", $data_inicial);
$start_time_stamp = @mktime(1, 0, 0, $month, $day, $year);
list($year, $month, $day) = explode("-", $data_final);
$end_time_stamp = @mktime(1, 0, 0, $month, $day, $year);
return round(($end_time_stamp - $start_time_stamp)/(24*60*60));
}
$DTC = somaDataAmd($DTC, 0, 0, 1);
['dias_ciclo_voltou'] = null;
$ULTIMOVC = DB_Class::make("lancamento_diario_ciclo")->_parcela($parcela->id)->_loadAll('data DESC limit 1', "data < '".$DTC." 00:00:00' ");
if($ULTIMOVC->size()>0) {
$PREDIAS=0;
foreach($global['fases'] as $k => $fase) {
$PREDIAS=$fase['duracao'];
break;
}
$global['dias_ciclo_voltou']=$PREDIAS+diasPassados(substr($ULTIMOVC->data,0,10), substr($DTC,0,10));
global $atualFase;
$atualFase=null;
}
$soma = 0;
$fk = 0;
$antfase = null;
foreach(['fases'] as $k => $fase) {
$fk=$k;
$soma += $fase['duracao']; // duração = campo node cadastro da variedade, representa quantos dias dura a fase;
if($soma > $diaspassados){
$atualFase=$fase;
$global['diaspassados']=$diaspassados;
$global['delta_diaspassados']=$diaspassados-($soma-$fase['duracao']);
break;
}
$antfase=$fase;
}
$proxFase = null;
if($atualFase==null){
$atualFase=$fase;
['diaspassados']=$diaspassados;
['delta_diaspassados']=$diaspassados-($soma);
}
if($fk<sizeof(['fases'])-1)
$proxFase = $global['fases'][$fk+1];
if($fk>0)
$antFase = $global['fases'][$fk-1];
['diaspassadosm']=$diaspassadosm;
['fase']=$atualFase;
['fasenext']=$proxFase;
['faseant']=$antFase;
['fasen']=$fk;
return $atualFase;
}
GD
GD - Valor acumulado de Graus Dia no dia analisado.
Temperatura basal = No cadastro da variedade, existe o campo temperatura basal, aqui ele verifica qual a variedade cadastrada na parcela para buscar o valor de temperatura Basal;
Valor de temperatura do dia do lançamento.
GD = ( temperatura máxima + temperatura mínima / 2) – temperatura basal
Dias
É a quantidade de dias que se passaram a partir do último lançamento diário salvo.
GD Acumulado (total)
GD acumulado (total): Valor Acumulado de Graus Dia do plantio até a data atual. (GDA)
É o valor do GD acumulado por dia.
Irrigação (mm)
Irrigação (mm): Irrigação registrada no lançamento;
É o valor do campo lâmina, imputado no lançamento dário;
Eficiência de irrigação (%)
Considera a uniformidade do equipamento e as perdas por arraste e evaporação durante a aplicação.
(uniformidade -4)/100.0`
O valor de uniformidade deve ser buscado no campo Uniformidade(%) no cadastro do equipamento.
Lâmina mínima
A lâmina mínima, é a quantidade mínima de mm que o pivô consegue irrigar.
1° verifica se o equipamento é pivô ou gotejo se for gotejo retorna 0. Essa verificação é feita pelo o equipamento que está vinculado a parcela, no cadastro do equipamento é informado através de um dropdow se o equipamento é do tipo pivô ou localizada/convencional(gotejo)
2° Se for do tipo pivô retorna o tempo volta a 100 % (é uma função) * taxa de aplicação do equipamento (é uma função)
Tempo volta a 100% (hh:mm)
Tempo que o pivô demora para dar uma volta completa na velocidade mais rápida de deslocamento, ou seja, o menor tempo por volta possível.
1° Verifica se no cadastro do equipamento vinculado a parcela, o campo Velocidade a 100% é igual a 0, se for retorna 1;
2° Se não: Perímetro última torre(é uma função)/ velocidade a 100%(valor imputado no cadastro do equipamento);
Perímetro da última torre
É o raio do pivô.
PI * raio da última torre² (valor imputado no cadastro do equipamento)
Taxa de aplicação do equipamento
1° Se o equipamento vinculado a parcela for do tipo 1. Essa verificação é feita no cadastro do equipamento é informado através de um dropdow se o equipamento é do tipo pivô (0) ou localizada/convencional (1). Os parâmetros usados abaixo foram imputados no cadastro do equipamento:
Se (espaçamento entre linhas espaçamentos entre os emissores) > 0 retorna vazão dos emissores(l/h) / (espaçamento entre linhas espaçamentos entre os emissores); Se não retorna 0;
2° Se o equipamento for do tipo 0.
Se o tempo volta a 100 (é uma função) for = 0 ou a área irrigada (é uma função) for = 0 retorna 0
Se não
retorna vazão em m³/h (é um campo no cadastro do equipamento) / 10.0 / tempo volta a 100 (é uma função) / área irrigada por hora (é uma função).
Área Irrigada por hora
1° Se o equipamento vinculado a parcela for do tipo localizado/convencional (0). Retorna 1;
2° Se não área do pivô(é uma função)*1/tempo de volta a 100% (é uma função);
Área do equipamento
(pi * (raio da última torre + raio irrigado após a última torre)²) / 10000;
Os parâmetros raio da última torre e raio irrigado após a última torre são valores imputados no cadastro do equipamento.
Se o equipamento for do tipo localizada/convencional, a área do equipamento é a soma da área das parcelas ativas;
ITN (mm)
ITN (mm): Irrigação Total Necessária, é o volume de água que deve ser aplicado para suprir de forma eficiente o Déficit Previsto;
déficit previsto (è uma função) / eficiência de irrigação (è uma função)
Se o resultado for < que a L mina mínima (é uma função), retorna 0.
Se não, retorna o valor calculado.
KC
Kc: Coeficiente da cultura;
1° Verifica qual a fase que está a cultura cadastrada na parcela;
2° Se a fase atual for a primeira fase retorna o valor do KC da fase atual.
3° Se o KC Fixo == sim, retorna o valor numérico do campo KC.
4° Se o Kc Fixo == Não é a fase for < 3 deve -se somar o KC da fase anterior com o valor do coeficiente dos dias passados.
Coeficiente diário = é o valor do Kc da próxima fase - o valor do Kc da fase anterior / duração de dias da fase atual. O resultado eu multiplico pela quantidade de dias que se passou na fase atual e adiciono ao valor do Kc da fase anterior.
5° Se for > = 3 o valor do coeficiente diário é calculado usando Kc da fase atual ao invés do Kc da próxima fase, o restante do cálculo é igual.

KL
KL: Coeficiente de localização da irrigação;
Área molhada = Buscar o valor do campo por Porcentagem de área molhada (%) no cadastro do equipamento e dividir por 100.
Se o valor de área sombreada for > que o valor de área molhada retorna a sqrt da área sombreada;
Se não retorna a sqrt da área molhada
KS
Ks: Coeficiente de estresse hídrico;
No cadastro da variedade existe o DropDow, Função Ks que pode ser Logarítmica, linear, fixa ou misto. A partir da verificação de qual fase está a cultura cadastrada na parcela, o sistema vai calcular o valor de ks pelo valor salvo do dropdown.
Umidade do dia anterior = é o valor de umidade de solo do dia anterior;
1° - Deve-se verificar em qual a fase a parcela, a partir daí:
Se for logarítmica: ks = (log( umidade solo do dia anterior - pmp(é uma função)) +1 ) / (log(cc (é uma função)-pmp (é uma função)) +1);
Se for linear:
ks = ( umidade solo do dia anterior - pmp(é uma função) / (cc (é uma função)-pmp (é uma função);
Se o ks for >1 o Ks = 1;
Se o ks for >0 retorna ks
se não retorna 0.
Se for fixo: Retorna 1
Se for misto:
Verifica se umidade do dia anterior > umidade de segurança(é uma função):
ks = (log( umidade solo do dia anterior - pmp(é uma função)+1 ) / (log(cc (é uma função)-pmp (é uma função)) +1);
Se não for maior:
ks = ( umidade solo do dia anterior - pmp(é uma função) / (cc (é uma função)-pmp (é uma função);
Depois verifica: Se o ks for >1 o Ks = 1; Se o ks for >0 retorna ks, se não retorna 0.
Lâmina Disponível
Lâmina Disponível: É a quantidade de lâmina de água em mm que ainda está disponível no solo para utilização da planta. É calculada considerando o Déficit consolidado no último dia de atualização.
CRA (é uma função) - déficit previsto(é uma função);
Se o resultado for > 0 retorna o resultado
Se não retorna 0;
PMP (ponto de murcha permanente)
Ponto de murcha Permanente: O valor mínimo de umidade em que as maiorias das culturas conseguem sobreviver. A partir dele ocorre a murcha permanente da planta (morte);
É a média ponderada dos valores de ponto de murcha das camadas,onde o peso será o Profundidade de absorção da camada;(olhar desenho que está no requisito profundidade de absorção camada);
Precipitação (cm)
Chuva registrada no lançamento diário em centímetros. É o valor de da precipitação multiplicado por 10.
Precipitação (mm)
Valor de chuva registrada no lançamento da parcela.
Precipitação efetiva(cm)
A precipitação que realmente foi útil para a cultura em cm. Desconsidera-se o escoamento e percolação profunda;
Se (precipitação (cm) < 25) = precipitação (cm)
Se for > 25 (precipitação (cm) – escoamento superficial);
Profundidade de Absorção camada
1° Buscar o valor de Profundidade de absorção ( é uma função);
2° Se a profundidade da raiz 1,3 ultrapassar as somas da espessura das camadas o valor retornado será a espessura da camada.
Se a profundidade da raiz 1,3 for < que o valor da espessura das camadas retorna a diferença de profundidade da raiz * 1,3 com a espessura das camadas acima.

Profundidade da raiz (cm)
Profundidade efetiva do sistema radicular da cultura manejada;
1° Verifica em qual fase está a cultura e busca o valor de profundidade de raiz da fase atual e da próxima fase e calcula:
Se não houver próxima fase ele retorna o valor de profundidade de raiz da fase atual, se houver próxima fase o valor de profundidade de raiz da próxima fase - o valor de profundidade de raiz da fase atual e dividir pela duração de dias da fase atual em seguida multiplicar pela quantidade de dias que se passaram da fase atual ao final somar com o valor de profundidade de raiz da fase atual.
Radiação (WJ/m²)
Radiação solar MJ/m²: Média de radiação solar registrada pela estação meteorológica em mega Joule por metro quadrado;
valor da radiação em w/m² * 0.08621
Tempo irrigado (hh:mm)
Tempo de funcionamento do pivô para realizar a irrigação.
É o valor de tempo que foi imputado no lançamento.
Tempo recomendado (hh:mm)
Tempo de irrigação necessário para suprir a demanda da cultura, calculado com referência no Déficit Previsto.
itn(é uma função) / taxa aplicacao equipamento(é uma função) * ( área da parcela(é uma função) / área pivô(é uma função) );
Área da parcela
Se o equipamento for do tipo Localizada/convencional: buscar o valor do campo área no cadastro da parcela.
Se o equipamento for do tipo pivô: área do pivô (é uma função) * (grau inicial - grau final)/ 360.
O grau inicial e o grau final, são os graus que determinam o tamanho da parcela, são imputados no cadastro de parcela.
Umidade de segurança (%)
Umidade de segurança (%):A umidade limite para expor a cultura ao estresse hídrico que possui baixo impacto sobre seu resultado produtivo.
1° Verifica em qual fase está a parcela e buscar o valor de f cadastrado no campo f da fase atual da parcela.
2° return cc(é uma função) - (( cc(é uma função) - pmp(é uma função) )* f );
Umidade de solo (%)
Umidade de solo (%): A umidade do solo estimada pelo software com base peso;
1° Se for o primeiro dia de lançamento: Verifica se o campo umidade do solo(%) está marcado para utilizar e se há um valor de faixa de umidade informado, se sim utilizar o valor da faixa informada;
Se não retorna a umidade inicial(é uma função)
2° - Se não for o primeiro: Verifica se o campo umidade do solo(%) está marcado para utilizar e se há um valor de faixa de umidade informado, se sim utilizar o valor da faixa informada;
se não: verifica se a densidade aparente (dg - é uma função ) é igual a 0, se for 0 retorna 0, se não for:
return cc(é uma função) - ((déficit( é uma função)/profundidade absorção(é uma função)/$dg (é uma função)/ área molhada (é uma função))) * 10.0;
Umidade inicial (%)
Umidade inicial (%): Umidade do solo que foi iniciado o balanço hídrico.
Buscar os valores de umidade que estão cadastrado no campo Umidade solo inicial (%), no cadastro de parcela.
É a média ponderada dos valores de umidade buscado no cadastro de parcela,onde o peso será o Profundidade de absorção da camada;(olhar desenho que está no requisito profundidade de absorção camada);
Umidade medida(%)
Umidade medida (%): Umidade medida pelo consultor para checagem do sistema;
Essa umidade corresponde as faixas de umidade da coluna umidade de solo na tela lançamento.
Os valores de:
Capacidade de campo = capacidade de campo(é uma função);
Umidade Plena I = (cc -(cc- umidade de segurança)0.2);
Umidade Plena II = (cc-(cc-umidade de segurança)0.4);
Umidade Moderada = (cc-(cc-umidade de segurança)0.65);
Faixa de segurança = umidade de segurança;
Déficit Moderado = (Umidade de segurança-(Umidade de segurança-pmp)0.2);
Déficit Severo = (Umidade de segurança-(Umidade de segurança-pmp)*0.5);
Pmp = pmp;
Acumulado de precipitação (cm)
É o valor acumulado da precipitação em cm, até o último dia de lançamento salvo;
Se for o primeiro dia de manejo da parcela, o valor de acumulado de precipitação será o valor da precipitação em cm.