function di = Circuito_Diodo(I)
   V = 10;
   R = 1.8;
   di = V - R*I - Vd(V, I);
end

function r = ReglaFalsa(f, a, b, p)
%Regula_Falsi(f, a, b)
%   f : función a evaluar
%   a : inicio del intervalo
%   b : fin frl intervalo
%   p : parametros

 while 1 
     c = a - f(a,p)*(b-a)/(f(b,p) - f(a,p));
     if(abs(f(c,p)) <= 1e-06) 
       r = c;
       return;
     end;
     if f(a,p)*f(c,p) < 0 
         b = c;
     else
         a = c;
   end;
 end;
     
 r= c;
end

function V = Vd(Vf, I)
  Is = 1e-12;
  Vt = 25.85e-3;
  
  if I>=0
      V = log(I/Is+1)*Vt;
  else
      V = Vf;
  end
end