<div dir="ltr">a sacada e' notar que optim() minimiza (ou maximiza, dependendo dos argumentos) a funcao objet... nao existem garantias de que sua fx assuma apenas valores nao negativos, entao vc tem q transforma-la numa funcao nao-negativa (c.f. sugestao).<div>
<br></div><div>Vc pode, entao, minimizar "fx^2" (pois essa funcao e' nao-negativa (o que nao pode ser garantido para fx), sob a pena de erros maiores... ou, mais "acuradamente" minimizar abs(fx).</div>
<div><br></div><div>Seguindo o seu exemplo:</div><div><br></div><div>gx = function(...) abs(fx(...))</div><div>optim(c(1), gx, a=3.3,b=-1.2,method="BFGS")<br></div><div><br></div><div>b</div></div><div class="gmail_extra">
<br><br><div class="gmail_quote">Em 12 de setembro de 2013 13:17, Samuel Carvalho <span dir="ltr"><<a href="mailto:samukajm@yahoo.com.br" target="_blank">samukajm@yahoo.com.br</a>></span> escreveu:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><div style="font-size:12pt;font-family:times new roman,new york,times,serif"><div style="font-family:'times new roman','new york',times,serif;font-size:12pt"><span>Caros, boa tarde!</span></div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif">
<span>Alguém poderia por gentileza auxiliar com a duvida relativa ao codigo abaixo?</span></div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif">
<span><br></span></div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif"><span># RCMR</span></div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif">
<span>y <- expression(exp(a+b/x))</span></div><div style="background-color:transparent">D(y,'x') #primeira derivada</div><div style="background-color:transparent">dy.dx <- expression(-(exp(a + b/x) * (b/x^2))) #resultado da primeira derivada<br>
</div><div style="background-color:transparent">D(dy.dx, 'x') #segunda derivada</div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif">
<span style="background-color:transparent">fx <- function(a,b,x) exp(a + b/x) * (b * (2 * x)/(x^2)^2) + exp(a + b/x) * (b/x^2) * (b/x^2) #resultado da segunda derivada</span></div><div style="background-color:transparent">
<span style="background-color:transparent">optim(c(1), fx, a=3.3,b=-1.2,method="BFGS")<br></span></div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif">
<span style="background-color:transparent"><br></span></div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif"><span style="background-color:transparent"># A ideia é encontrar o ponto de inflexao para o modelo representado pelo objeto y. Por definição o ponto de inflexao é o valor de x que faz a segunda derivada da </span></div>
<div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif"><span style="background-color:transparent"># função igual a zero. Montei este rcmr porém não estou certo se a otimização de fx está igualando a zero, até porque os resultados não estão condizentes.</span></div>
<div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif"><span style="background-color:transparent"># Gostaria se possível também de alguma dica de algum livro que tenha dicas de cálculos matemáticos com o R pois gostaria de adaptar algumas rotinas do maple </span></div>
<div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif"><span style="background-color:transparent"># para o R, até porque recentemente precisei isolar um termo de um modelo não linear que manualmente não é tão simples e gostaria de fazer estes calculos com o </span></div>
<div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif"><span style="background-color:transparent"># R e nao </span><span style="background-color:transparent">mais com o maple. Segue um exemplo simples de um calculo que gostaria de reproduzir com o R</span></div>
<div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif"><span style="background-color:transparent"><br></span></div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif">
y = b0 + b1x</div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif">b0=?</div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif">
b0 = y - b1x # esta é a saída que gostaria de
encontrar com o R. Ate cheguei a ver um pouco sobre o pacote Ryacas mas sem muito sucesso.</div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif">
<br></div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:'times new roman','new york',times,serif"><span style="font-size:12pt">Ja deixo aqui meus agradecimentos</span><br>
</div><div style="font-family:'times new roman','new york',times,serif;font-size:12pt"><br></div><div style="font-family:courier,monaco,monospace,sans-serif;font-size:12pt"><font size="3"><b>====================================</b></font></div>
<div style="font-family:courier,monaco,monospace,sans-serif;font-size:12pt"><font size="3"><b>Samuel P. C. Carvalho<br></b><font color="#000000">Engº Florestal [UFLA]</font></font></div><div style="font-style:normal;font-size:16px;background-color:transparent;font-family:courier,monaco,monospace,sans-serif">
<font size="3"><font color="#000000">Mestre em Ciências Florestais [UFLA]</font></font></div><div style="font-family:courier,monaco,monospace,sans-serif;font-size:12pt"><font color="#000000">Doutor em Recursos Florestais [ESALQ/USP]</font></div>
<div style="font-family:courier,monaco,monospace,sans-serif;font-size:12pt"><font>=============================================</font></div></div></div><br>_______________________________________________<br>
R-br mailing list<br>
<a href="mailto:R-br@listas.c3sl.ufpr.br">R-br@listas.c3sl.ufpr.br</a><br>
<a href="https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br" target="_blank">https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br</a><br>
Leia o guia de postagem (<a href="http://www.leg.ufpr.br/r-br-guia" target="_blank">http://www.leg.ufpr.br/r-br-guia</a>) e forneça código mínimo reproduzível.<br></blockquote></div><br></div>