ghasem
Posts:
118
Registered:
4/13/13


Re: complicated equation including bessel functions
Posted:
May 8, 2013 12:35 PM


> Yes. Instead of trying to solve for a root of f(z) = besselj(1, z) [for > example] solve for solutions of f([x; y]) = [real(besselj(1, x+1i*y)); > imag(besselj(1, x+1i*y))] > > function output = mysystem(inputs) > % The inputs are all purely real > realPartOfInput = inputs(1); > imagPartOfInput = inputs(2); > > % Build a complex number from the inputs > z = complex(realPartOfInput, imagPartOfInput); > > % Now you can work with the complex value z internally > complexOutput = besselj(1, z); > > % In order to return a value to FSOLVE, the outputs must be purely real > % Break the output into its parts > output = [real(complexOutput); imag(complexOutput)]; > > Instead of having a system of one equation in one unknown you have a system > of two equations (the real and imaginary parts of the BESSEL function) in > two unknowns (the real and imaginary parts of z.) > >  > Steve Lord > slord@mathworks.com > To contact Technical Support use the Contact Us link on > http://www.mathworks.com ==================================== Hi steve Lord. thank you for your attention.I know that.But when complex unknowns are within argument of bessel function,do you think by using of real and imag commands,we have a real and imag expression,really? for example,suppose we have: syms a b % a,b are unknown c = a+1j*b; d = besseli(1,c); % now write real(d),we have: real(d) = conj(besseli(1, a + b*i))/2 + besseli(1, a + b*i)/2 % now my question is: do you think that "conj(besseli(1, a + b*i))/2 + besseli(1, a + b*i)/2" is a purely real expression? I think that is not. So,we can not use from real and imag command to obtain purely real and imaginary expression,when we have complex argument in bessel functions... when use from real and imag commands in this case,again our equation is complex! are you agree with me? ghasem

