Problem with abs()

5 vues (au cours des 30 derniers jours)
Patrick Philipiak
Patrick Philipiak le 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 commentaires
Walter Roberson
Walter Roberson le 25 Oct 2017
Not is not clear what your a and b are for this purpose?
Patrick Philipiak
Patrick Philipiak le 25 Oct 2017
Modifié(e) : Patrick Philipiak le 25 Oct 2017
Sorry im new to the matlab forum. I attached the script so you can reproduce it now.

Connectez-vous pour commenter.

Réponses (1)

KSSV
KSSV le 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.

Catégories

En savoir plus sur Programming dans Help Center et File Exchange

Tags

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by