Message Boards Message Boards

4 Replies
5 Total Likes
View groups...
Share this post:

How to solve vector equation?

Posted 10 years ago

Hi there,

I have an equation: curl(B)=Cj, where B and j are both 3D vectors. Now I know everything in this equation, except B. I want to find it.

It doesn't work, if I use:

In[195]:= tok = sigma*Elpolje

Out[195]= {-((
  A sigma ((a + x)^2 + 
     y^2) (-((2 (a + x) ((-a + x)^2 + y^2))/((a + x)^2 + y^2)^2) + (
     2 (-a + x))/((a + x)^2 + y^2)))/((-a + x)^2 + y^2)), -((
  A sigma ((a + x)^2 + 
     y^2) (-((2 y ((-a + x)^2 + y^2))/((a + x)^2 + y^2)^2) + (
     2 y)/((a + x)^2 + y^2)))/((-a + x)^2 + y^2))}

In[202]:= Solve[Curl[B, {x, y, z}] == tokec, B]

Out[202]= {}

Any other ideas? Can Mathemtica do that?

POSTED BY: Mitja Jan?i?
4 Replies

Alas, as best I can tell, the integral is showing no sign of wanting to complete. But are you certain this needs a definite integral? Since B satisfies a set of differential conditions, one might hope that indefinite integrals would be useful (I realize that does not always work out though).

As for the deplorable state of my physics knowledge, best not to get into that.

POSTED BY: Daniel Lichtblau

Actually, Daniel, I highly appreciate your answer but... I found another formula on how to get that B. I don't know how much you know about physics but I remembered the Biot-Savart law. And I think that professor wants us to use it.

So, I hope you didn't waste to much time writing your last post, because I still need your help. :D

I have this vector:

In[13]:= tok = Simplify[sigma*Elpolje]

Out[13]= {(
 4 a A sigma (a^2 - x^2 + y^2))/((a^2 - 2 a x + x^2 + y^2) (a^2 + 
    2 a x + x^2 + y^2)), -((
  8 a A sigma x y)/((a^2 - 2 a x + x^2 + y^2) (a^2 + 2 a x + x^2 + 

And now I want to do a horrible integral. (If the integral simply can't be done, than I will of course do it with your method). The integral should be something like:

      Pi))*((tok[[2]]*z0)/((x0 - x)^2 + (y0 - y)^2 + z0^2)^(3/
       2)), {x, -Infinity, Infinity}, {y, -Infinity, Infinity}]

But.... mathematica can't do it. And now, since my knowledge of mathematica is really poor, I am asking you if I am doing something wrogn or is this really a bit too complicated for mathematica?

POSTED BY: Mitja Jan?i?

This involves calculus. Solve does not do calculus. It does not know calculus (it is a whiz at algebra and knows a bit of trig).

To get a viable result notice that the (missing) third vector component is zero, and the divergence is 0 as it must be for the field to be a curl. Since D[tok[[1]],x]+D[tok[[2]],y] vanishes, it makes sense to look for a vector field of the form {0,0,F} where D[F,y]==tok[[1]] and -D[F,x]==tok[[2]]. So integrate tok[[1]] with respect to y and see what happens.

vf = {-((A sigma ((a + x)^2 +  y^2) (-((2 (a + x) ((-a + x)^2 + y^2))/((a + x)^2 + 
               y^2)^2) + (2 (-a + x))/((a + x)^2 + y^2)))/((-a +  x)^2 + y^2)), 
-((A sigma ((a + x)^2 +  y^2) (-((2 y ((-a + x)^2 + y^2))/((a + x)^2 + 
               y^2)^2) + (2 y)/((a + x)^2 + y^2)))/((-a + x)^2 +   y^2)), 0}

Together[Curl[{0, 0, Integrate[vf[[1]], y]}, {x, y, z}] - vf]
(* Out[30]= {0, 0, 0} *)

That worked. So the field is {0, 0, Integrate[vf[[1]], y]}.

Simplify[{0, 0, Integrate[vf[[1]], y]}]

(* Out[32]= {0, 0, 2 A sigma (ArcTan[y/(a - x)] + ArcTan[y/(a + x)])} *)
POSTED BY: Daniel Lichtblau

The problem is similar to finding the vector potential A corresponding to a magnetic field B, where B = curl A. The result is usually not unique, but may be narrowed down with the appropriate boundary conditions. I don't think Mathematica can directly solve vector differential equations like yours. You might try reformulating the problem as a set of simultaneous partial differential equations.

POSTED BY: S M Blinder
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
or Discard

Group Abstract Group Abstract