Olá pessoal,

No meu último post vocês me ajudaram a encontrar o valor de intersecção entre duas funções (Ponto de intersecção entre duas funções no R). Bem, agora o problema é que eu preciso que a função uniroot seja executada várias vezes os valores da intersecção seja armazenado em um vetor para que seja utilizando posteriormente. O estranho que aproveitando tentando fazer isso nas respostas do meu último post funciona, mas quando eu tento fazer o mesmo no meu código "de verdade" não funcionada e aparece o seguinte erro:
Error in uniroot(f = ffpsil, interval = c(-5, -0.05), Tar = Tar[i], Tl = Tl[i],  :
  f() values at end points not of opposite sign
In addition: Warning messages:
1: In if (is.na(f.lower)) stop("f.lower = f(lower) is NA") :
  the condition has length > 1 and only the first element will be used
2: In if (is.na(f.upper)) stop("f.upper = f(upper) is NA") :
  the condition has length > 1 and only the first element will be used

Se eu adiciono valores para upper, lower, f.lower e f.upper para aparecer Error in uniroot(f = ffpsil, interval = c(-5, -0.05), Tar = Tar[i], Tl = Tl[i],  :
  f() values at end points not of opposite sign

Como o meu código está um pouco grande para postar aqui, estou colocando em um arquivo no dropbox (Código-Rodolfo) e se vocês puderem olharem e me ajudar a encontrar o erro vai me ajudar bastante.

PS.: Como eu ainda estou escrevendo o código, ele está um pouco desorganizado, mas espero que vocês entendam.

Desde já obrigado pela atenção e ajuda.