Hola.
necesito si me pueden ayudar con la siguiente programación.
Necesito aproximar la siguiente ecuación diferencial
\( \displaystyle\frac{dx}{dt}=-5x\hspace{5mm} \)
con el siguiente algoritmo
\( x_{k+1}=x_k+\displaystyle\frac{1}{n}\left(\displaystyle\frac{[N\cdot b(t_k,x_k)]}{N}+\xi_k \right) \)
\( n \) es l número de iteraciones, \( [\cdot] \) denota la parte entera de un número, \( N \) es un entero dado y donde, condicionalmente al conocimiento de \( x_k \), \( \xi_{k+1} \) tiene distribución Bernoulli de parámetro
\( p_k=x_k-\displaystyle\frac{[N\cdot b(t_k,x_k)]}{N} \).
Para este ejemplo \( b(t,x)=-5x \).
Se como hacer el algoritmo para la variable aleatoria \( \xi_k \), lo hice con el siguiente algoritmo
function X=Bern(p,n,k)
if nargin==2
k=1
end
X=rand(n,k)
I=find(X<=p)
X=zeros(n,k);
X(I)=ones(size(I))
pero no logro realizar todo el algoritmo.
Para calcular \( \xi_{k+1} \), se hace lo siguiente,
Se calcula el valor de \( p_k=x_k-\displaystyle\frac{[N\cdot b(t_k,x_k)]}{N} \)
si \( p_k<\textsf{(número aleatorio)}^* \), entonces \( \xi_{k+1}=1 \) y en otro caso \( \xi_{k+1}=0 \)
para generar esos \( \textsf{(números aleatorios)}^* \), matlab dispone de la función \( rand(n,k) \) que genera una matriz de orden \( n\times k \) de números aleatorios entre \( [0,1] \) identicamente distribuidos.
Agradecería cualquier ayuda.
Saludos.