Magnetic field of a dipole in co ordinate free form

AI Thread Summary
The discussion revolves around calculating the magnetic field of a cylindrical magnet at a distance of 1 cm using dipole theory, with the user encountering discrepancies between calculated and measured values. The user initially calculated a magnetic moment and field strength but found the results implausible, prompting a review of their MATLAB implementation. Participants pointed out that the dipole field should vary as 1/R^3, not 1/R^5, leading to a corrected calculation that yielded a more reasonable value. The conversation highlights the importance of considering higher-order magnetic moments and calibration issues, suggesting that the user's magnet may not behave like a perfect dipole. The user plans to gather more measurements to refine their calculations and calibration process.
Sylvester1
Messages
23
Reaction score
0
Hello everybody!
I am writing this topi because i got stuck in this!I have a cylindrical magnet with 1,5mm Radius,2mm thickness and Br 1,38 Tesla! I want to calculate the magnetic field in a distance s = [0 0 0.01](in meters) ,that means in 1cm distance while my magnet's position is α = [0 0 0].

the vector form is [x y z] .

using the equation found at http://en.wikipedia.org/wiki/Dipole#Magnitudefor Vector Form i got a result of [0 0 46.5498] Tesla which is impossible!

for the magnetic moment calculation i used the type m =π*Br*d^2*l/(4 μ0) where d is the diameter of my magnet and l the thickness


Can not spot my mistake since i expect to have uT as a result!Any opinion aprreciated!Thanx in advance!
 
Physics news on Phys.org
I get m=0.01553 Am^2 (WolframAlpha) and 3.11mT (WolframAlpha), using your formulas and values and assuming the magnet is aligned with the z-axis.
 
Sylvester1 said:
Can not spot my mistake

We can't spot it either, because we can't see the details of how you actually did your calculation. (hint, hint... :wink:)
 
i used MATLAB to do my calculations!more specific!

MagnetLoc = [0 0 0];

Sensors = [0
0
0.01]

R = magnetLoc - Sensors';

rH = R./norm(R);

theta = acos(R(3)/norm(R));

gamma = atan(R(2)/norm(R));

m1 = 0.0155171294871; % magnitude of magnetic moment m

m = [m1*sin(theta)*cos(gamma) m1*sin(theta)*sin(gamma) m1*cos(theta)];

M = 1.2566370614 * (10^-6); %vacuum perneability (μ0)

A = M/(4*pi*(norm(R)^5));

C = (3 * dot( rH , m) * rH)' - ((norm(R)^2)*m);Field = A*C
 
OK, I'll move this over to the Matlab forum and maybe someone there can check whether you've implemented the equation properly.
 
The first part (3 * dot( rH , m) * rH) should use R I think. Otherwise, you have an expression which grows (with R->0) with 1/R^5.
 
xmm!the equation says to use unit vector of R!if i use R i get even bigger magnitude!

What do you mean with your second recommendation?
 
Sylvester1 said:
if i use R i get even bigger magnitude!
Now that is very surprising, as |R| < |rH|

What do you mean with your second recommendation?
That was just an explanation why the current calculation has to be wrong.
(3 * dot( rH , m) * rH) does not depend on the magnitude of R. For a constant direction, your expression can be simplified to c/R^5 (neglecting the second term here). That is wrong, a dipole field is proportional to 1/R^3.
 
ok you are right!when i use R instead of rH i get 0.0031 Tesla!

What i want to do is find the position of a magnet in an area 1cm to 3cm(see it as a cube) away from my sensor! In order to do that i calculate the theoritical value of the magnetic field at a specific position (here at 1cm) and then i use least square algorithm for the relationship : (Btheoritical-Bexperiment) in order to minimize this and find the best solution!the problem is that even 3100uT is not even close to the value which my sensor gives to me at 1cm distance which is approximately 1000uT according to my sensor!
 
  • #10
- 1.38 Tesla could be the magnetic field at some specific point, not everywhere in the magnet
- higher moments (quadruple, ...) might influence the value a bit

(Btheoritical-Bexperiment) in order to minimize this and find the best solution!
You can solve this (analytically), there is no need to use a minimization algorithm.

Do you get the same ratio measured/calculated for other distances?
 
  • #11
no is completely differenT!it drives me crazy!can not find where i make the mistake..
 
  • #12
Sylvester1 said:
xmm!

xmm? :confused:

(By the way, we have a rule against using text-message abbreviations here. Now you know.)
 
  • #13
Can you give some examples for "different"? It might be possible to use a different formula to fit the data.
 
  • #14
ok let me get some measurements again and i will post them as soon as i get them !
 
  • #15
ok got the measurements!after calibration and removing the Earth magnetic field i got :

for 1cm : x = 173uT y = -74.4733 z = 2048,1 uT

for 2cm : x = -19.7439 y = 53,2893 z = 402,8459 uT

for 3cm : x = -3,4647 y = 4,2611 z = 141,9412 uT
 
  • #16
2048/402.8=5.08 < 23, your field drops slower than a dipole field.
402.8/141.9=2.84 < 1.53=3.375, same here.

The last value fits to the theoretic dipole prediction (~115μT), which is a hint that higher orders of the field could be relevant for 1cm and 2cm.

I neglected the small x- and y-components.
 
  • #17
mfb said:
is a hint that higher orders of the field could be relevant for 1cm and 2cm.

so you mean that i need to find scale factors? maybe the calibration is not correct!i mean that how can i calibrate a magnetometer that is still?
 
  • #18
Your magnet is not a perfect, point-like dipole. Those deviations can be expressed as quadrupole moment, sextupole moment, ...
Alternatively, measure more points, and find some effective formula as calibration.
 
  • #19
ok!thanx for your time!i will come back when i manage to make it work :)!
 
Back
Top