Problem with abs()

10 views (last 30 days)
Patrick Philipiak
Patrick Philipiak on 25 Oct 2017
Edited: Patrick Philipiak on 25 Oct 2017
So i have a function which i plot that looks like this
f(x)= (1i*omega*mueh)*(2*d^3/3*1000/(pi*120))*(-(i *(x - x1)* exp(-i* k* sqrt((x - x1)^2 + (y - y1)^2 + (z - z1)^2))* (k* sqrt((x - x1)^2 + (y - y1)^2 + (z - z1)^2) - i))/(4* pi *((x - x1)^2 + (y - y1)^2 + (z - z1)^2)^(3/2)))
It is a function for an the z component of an electric field. I now need the absolut value of that field. Here comes the kicker.
I get two different results. Its different between abs() and doing sqrt(a^2+b^2). So it seems like i dont really know enough about abs() or what it really does. I though i should get the same result. can someone enlighten me so i dont fall for this again?
I Attached my script. There is a lot going on. Its basicly a superpositon of the values.
The important lines are 136 and 138
  4 Comments
Walter Roberson
Walter Roberson on 25 Oct 2017
Not is not clear what your a and b are for this purpose?
Patrick Philipiak
Patrick Philipiak on 25 Oct 2017
Edited: Patrick Philipiak on 25 Oct 2017
Sorry im new to the matlab forum. I attached the script so you can reproduce it now.

Sign in to comment.

Answers (1)

KSSV
KSSV on 25 Oct 2017
abs gives you a positive value always if you input a number. It gives you sqrt(Real^2+imaginary^2) if you input a a complex number.

Categories

Find more on Programming in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!