# MATLAB: How to format the nonlinear equations to find solutions

function nonlinear equations

I would like to write a function to solve two nonlinear equations in order to find K and a and use the solved K and a in other function later, that is, K=a*P(K); 1=a*Q(K). P(K)and Q(K) are two complicated expressions with respect to K. How to format this?

• function ncf = N(x)%ncf = 0.5*(1+erf(x/sqrt(2)));xr = real(x);xi = imag(x);if abs(xi)>1e-10  error 'imag(x) too large in N(x)'endncf = 0.5*(1+erf(xr/sqrt(2))) + i*xi.*exp(-0.5*xr.^2)/sqrt(2*pi);endfunction [K,alpha] = alphaCrit(S,r,sigma,T)x0 = [1 2];sol = fsolve(@(x)fun(x,S,sigma,T),x0)K = sol(1);alpha = sol(2);end function res = fun(x,S,sigma,T)K = x(1);alpha = x(2);d2 = ( log(S) - log(K) + (r-0.5*sigma^2)*T ) / (sigma*sqrt(T));res(1) = K - alpha * exp(-r*T)*N(-d2);res(2) = 1 - alpha * exp(-r*T)/(sqrt(2*pi*sigma^2*T)*K)*exp(-0.5*d2^2);end