Hi,
I need to solve the following equation by using Newton-raphson method :a. f(lambda)=-z'*inv(M)*inv(W)*Q*inv(W)*inv(M)*z, W=inv(M)+lambda*Q f'(lambda)=z'*inv(M)*inv(W)*(Q^2*inv(W)+inv(W)*Q^2)*inv(W)*inv(M)*z Q and W are complex square matrices ,also z and M are metrices .I wrote a code to find the root by Newton's method ,but the value of the root is complex ,but it must be real.I am not sure a bout the derivative of f(x). I have another form to the function f(x) ,but I don't know if it's suitable to be solved by Newton's method in matlab,the other form is: m gamma_k*|x_k|^2 b. f(lambda)=sum ----------------------- k=1 (1+lambda(gamma_k))^2 m (gamma_k)^2*|x_k|^2f'(lambda)= 2* sum -------------------------- k=1 (1+lambda(gamma_k))^3 where gamma_k is sub indices , gamma is eigenvalue m is total number of eigenvalues of T=(M)^(1/3)*Q*(M)^(1/2) x=U'*M^(-1/2)*z ,U is eigen vectors of T.Is this form in (b) of equation suitable to be solved by Newton Raphson method. The code for form (a): delta=1e-12; epsilon=1e-12; max1=500; lambda=-1/(2*gamma); for k=1:max1 zeta=cos(theta); I=eye(n,n); Q=zeta*I-p*p'; W=inv(M)+lambda*Q; y1=2*z'*inv(M)*inv(W)*Q.^2*inv(W)*inv(M)*z; y=-z'*inv(M)*inv(W)*Q*inv(W)*inv(M)*z; p1=lambda-y/y1; err=abs(p1-lambda); lambda=p1 if (err<delta) break end k err end
Best Answer