<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif">Senhores, bom dia!</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style="font-family:verdana,sans-serif">Fiz algumas alterações no código e está rodando, mas não examinei a fundo a lógica das operações. Olhei apenas os gráficos finais e parece estar correto...</div><div class="gmail_default" style="font-family:verdana,sans-serif"><br></div><div class="gmail_default" style=""><div class="gmail_default"><font face="monospace, monospace">### <code r></font></div><div class="gmail_default"><font face="monospace, monospace">setwd("D:/LAB/NOVOS/MET")</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">rm(list = ls())</font></div><div class="gmail_default"><font face="monospace, monospace">a = read.table("x.txt", sep = "\t", header = T); head(a)</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">#----------Iniciar o BH----------#</font></div><div class="gmail_default"><font face="monospace, monospace">cad = 100</font></div><div class="gmail_default"><font face="monospace, monospace">a$P.ETP = a$RAIN-a$ETP.Penman</font></div><div class="gmail_default"><font face="monospace, monospace">a$NAc = 0</font></div><div class="gmail_default"><font face="monospace, monospace">a$ARMi = cad</font></div><div class="gmail_default"><font face="monospace, monospace">a$ARMf = a$ARMi</font></div><div class="gmail_default"><font face="monospace, monospace">a$ALT = 0</font></div><div class="gmail_default"><font face="monospace, monospace">a$EXC = a$DEF = a$ETR = NA</font></div><div class="gmail_default"><font face="monospace, monospace">head(a)</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace"># Variáveis iniciais que estavam faltando...</font></div><div class="gmail_default"><font face="monospace, monospace">a$ETR[1]  = with(a, if(P.ETP[1]<0){RAIN[1]+abs(ALT[1])} else {ETP.Penman[1]})</font></div><div class="gmail_default"><font face="monospace, monospace">a$DEF[1]  = with(a, ETP.Penman[1] - ETR[1])</font></div><div class="gmail_default"><font face="monospace, monospace">a$EXC[1]  = with(a, ARMi[1] - ARMf[1])</font></div><div class="gmail_default"><font face="monospace, monospace">head(a)</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">for(i in 2:nrow(a)){</font></div><div class="gmail_default"><font face="monospace, monospace">     if(a$P.ETP[i]<0){</font></div><div class="gmail_default"><font face="monospace, monospace">          (a$NAc[i] = a$P.ETP[i]+a$NAc[i-1]) </font></div><div class="gmail_default"><font face="monospace, monospace">          (a$ARMi[i] = (cad*exp(-1*((abs(a$NAc[i]))/cad))))</font></div><div class="gmail_default"><font face="monospace, monospace">          (a$ARMf[i] = ifelse(a$ARMi[i] > cad, cad, a$ARMi[i])) ### inseri essa linha</font></div><div class="gmail_default"><font face="monospace, monospace">    } else {</font></div><div class="gmail_default"><font face="monospace, monospace">          (a$ARMi[i] = a$ARMf[i-1]+a$P.ETP[i]) ### mudei a posição! Calcula sempre ARMi primeiro</font></div><div class="gmail_default"><font face="monospace, monospace">          (a$ARMf[i] = ifelse(a$ARMi[i] > cad, cad, a$ARMi[i]))</font></div><div class="gmail_default"><font face="monospace, monospace">          (a$NAc[i]  = cad*log((a$ARMf[i])/cad))</font></div><div class="gmail_default"><font face="monospace, monospace">    }</font></div><div class="gmail_default"><font face="monospace, monospace">     a$ALT[i] = a$ARMf[i] - a$ARMf[i-1]</font></div><div class="gmail_default"><font face="monospace, monospace">     a$ETR[i] = if(a$P.ETP[i]<0){a$RAIN[i]+abs(a$ALT[i])} else {a$ETP.Penman[i]} </font></div><div class="gmail_default"><font face="monospace, monospace">     a$DEF[i] = ifelse(a$ETP.Penman[i]-a$ETR[i] > 0, a$ETP.Penman[i]-a$ETR[i], 0) ### alterado</font></div><div class="gmail_default"><font face="monospace, monospace">     a$EXC[i] = a$ARMi[i] - a$ARMf[i]</font></div><div class="gmail_default"><font face="monospace, monospace">}</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace">head(a)</font></div><div class="gmail_default"><font face="monospace, monospace">a$DATE <- as.Date(a$DATE)</font></div><div class="gmail_default"><font face="monospace, monospace"># plot(a$ARMi~a$DATE, type="l") # variação do armazenamento</font></div><div class="gmail_default"><font face="monospace, monospace">plot(a$ARMf~a$DATE, type="l") # variação do armazenamento</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace"># Extrato...</font></div><div class="gmail_default"><font face="monospace, monospace">yLim <- range(c(a$EXC, -a$DEF)); yLim</font></div><div class="gmail_default"><font face="monospace, monospace">plot(a$EXC~a$DATE, type="l", ylim=yLim); lines(-a$DEF~a$DATE, col=2)</font></div><div class="gmail_default"><font face="monospace, monospace">plot(a$EXC~a$DATE, type="l", ylim=c(-10,10)); lines(-a$DEF~a$DATE, col=2)</font></div><div class="gmail_default"><font face="monospace, monospace">barplot(a$EXC, col=4, bor=NA, ylim=c(-10,10)); barplot(-a$DEF, col=2, bor=NA, add=T)</font></div><div class="gmail_default"><font face="monospace, monospace"><br></font></div><div class="gmail_default"><font face="monospace, monospace"># Precipitação vs. ET</font></div><div class="gmail_default"><font face="monospace, monospace">plot(a$RAIN~a$DATE, type="l", ylim=c(-10,10)); lines(-a$ETP.Penman~a$DATE, col=3); lines(-a$ETR~a$DATE, col=2)</font></div><div class="gmail_default"><font face="monospace, monospace">### </code></font></div><div style="font-family:verdana,sans-serif"><br></div><div style="font-family:verdana,sans-serif"><img src="cid:ii_154c92593d5db283" alt="Imagem inline 1" width="503" height="296"><br></div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><font face="arial, helvetica, sans-serif" style="font-size:small"><div style="font-family:'trebuchet ms',sans-serif;display:inline">​</div></font><font face="arial, helvetica, sans-serif" style="font-size:12.8px"><span style="font-size:small">================================================</span><br>Éder Comunello</font><div style="font-size:12.8px"><span style="font-family:arial,helvetica,sans-serif">Agronomist (UEM), MSc in Environ. Sciences (UEM)</span><font face="arial, helvetica, sans-serif"><br></font></div><div style="font-size:12.8px"><div style="font-size:small"><span style="font-family:arial,helvetica,sans-serif">DSc in Agricultural Systems Engineering (USP/Esalq)</span><br></div><div><span style="font-size:small">Brazilian Agricultural Research Corporation (</span><font face="arial, helvetica, sans-serif" style="font-size:small">Embrapa)</font></div><div><div><font face="arial, helvetica, sans-serif" style="font-size:small">Dourados, MS, Brazil </font><font face="arial, helvetica, sans-serif" size="2">|<O>|</font></div><div style="font-size:small"><span style="font-family:arial,helvetica,sans-serif">================================================</span><br></div></div></div><div style="font-size:small"><font face="arial, helvetica, sans-serif">GEO, </font>-22.2752, -54.8182, 408m<span style="font-family:arial,helvetica,sans-serif"><br></span></div><div style="font-size:12.8px"><span style="font-size:small;font-family:arial,helvetica,sans-serif">UTC-04:00 / DST: UTC-03:00</span></div><div><div><div><br></div><div><br></div></div></div></div></div></div></div></div></div></div></div></div></div></div>