1. Not finding help here? Sign up for a free 30min tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Physics+matlab = hard

  1. Mar 20, 2006 #1
    For one of my classes I need to implement a model of a charged particle that is giong through electric and magnetic fields.
    I can assume these constants:
    m=1
    q=1
    x(0)=0
    t-scan: [0 1]
    Now the questions:
    1)
    Simulate the constant acceleration analytic case and plot the result. Add the analytic result from the plot to demostrate the agreement. Assume, E0=[1 0 0] (also E0=E, so constant)
    ;;My answer: I know that it will be constant because solving for a you get q/m[E+ v' x B] and all of them are constant, but I cant plot it in Matlab, because I have NEVER used it...

    2)Solve for E(x)= [5 0 0] B(x)=[0 0 20] v0=[1 1 1]. Plot the position and velocity curves. Observe and measure the ExB drift. (hint: note the vector direction of the drift) and compare it to the expected analytic result--> (which i think its like a sin/cos curve)

    Please, I really need to get this done and I have tried it, but I cant get this problem to work.....

    This is for problem #1
    Code (Text):

    E = [1 0 0]; % define Po
    t=0:.5:1; % make a vector L with 100 elements evenly spaced from 0 to 10
    B=[1 0 0];
    v=[0 0 0];

    a2 = E+cross(v,B);

    figure;
    plot(t,a2);
     
    It doesnt work...and I dont have any idea why...
    I have NO idea for Question #2,,,so any help would be greatly appreachiated :)
     
  2. jcsd
  3. Mar 20, 2006 #2
    because the size of t and a2 do not match.
     
  4. Mar 20, 2006 #3
    and how can I fix it?
    acceleration doesnt depend on time so it has to be constant....but how can I put it, so that I say to matlab that I want "a" to be a certain value throughout the whole time..
    Thanks for you help
     
  5. Mar 21, 2006 #4
    For 1, are you trying to plot the magnitude of the acceleration, or a single direction?

    You can do figure;plot(t,a2(1)) to see the x-direction acceleration, and similarly figure; plot(t,a2(2)) and figure; plot(t,a2(3)) to see the y and z acceleration components. Or you could do figure; plot(t,norm(a)) to see the magnitude of the acceleration. You are having problems beacuse a2 is just a vector with 3 components, so when you say plot(t,a2) it tries to put one of the a2 components with each t value, which won't work unless t is the same size, and even then it won't give you what you want.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?



Similar Discussions: Physics+matlab = hard
  1. Matlab with physics (Replies: 1)

  2. Matlab and physics (Replies: 3)

Loading...