ff3d-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ff3d-users] magnetic modeling


From: Schmidt Beat
Subject: [ff3d-users] magnetic modeling
Date: Mon, 25 Sep 2006 07:50:53 +0000 (GMT)

Hi,

I'm trying to use ff3d for 3D magnetic modeling. I've started out with a simple cylindrical magnet (current in a cylindrical sheet) and would like to calculate the vector potential A, as a first step.
The first problem I have encountered was that the solver does not seem to accept the following form of the Robin boundary condition :

C*Ax+dnu(Ax)=0

Only Ax+dnu(Ax)=0 is accepted.

The second problem is that even when the boundary condition is given in this second form, the solver stops in the middle of the calculation and returns an error.

I'm stuck on this problem and would appreciate any help.

Beat



My files look as follows:

Povray file (test.pov):

difference{
cylinder {
  <0,-1,0>, <0,1,0>, 0.5
}
cylinder {
  <0,-1.1,0>, <0,1.1,0>,  0.45
 }
  pigment{color rgb <1,0,0>}
}
sphere {
  <0, 0, 0>, 4   
  pigment{color rgb <1,1,1>}
}

ff3d file :

double pi = 3.1415926536;
double mu0 = 4 * pi *10e-7;
double R=0.5; //rayon de l'aimant
double C=0.25; //inverse du rayon de la sphère limitante R=4
double j0 = 1; //normalisation du courant d'aimantation

scene S = pov("test.pov");
mesh M = structured(<80,80,80>,(-4,-4,-4),(4,4,4));
domain O = domain(S, inside(<1,1,1>));
function jx = - one(<1,0,0>)*z/0.5;
function jz = one(<1,0,0>)*x/0.5;

solve(Ax,Ay,Az)in O by M method(type = penalty)
{
    pde(Ax)
        dx(dx (Ax)) +dy(dy (Ax)) + dz(dz (Ax)) = mu0*jx;
        Ax+dnu(Ax)=0 on <1,1,1>;
       
    pde(Ay)
        dx(dx (Ay)) +dy(dy (Ay)) + dz(dz (Ay)) = 0;
        Ay+dnu(Ay)=0 on <1,1,1>;
       
    pde(Az)
        dx(dx (Az)) +dy(dy (Az)) + dz(dz (Az)) = mu0*jz;
        Az+dnu(Az)=0 on <1,1,1>;

}



reply via email to

[Prev in Thread] Current Thread [Next in Thread]