I want to make a 2x2 matrix from 4 variables that are dependent on a value(e) that goes from 0 to 30 at intervals of 0.1?

3 次查看(过去 30 天)

So I have code with 4 variables that are dependant on a variable e that goes from 0 to 30 at intervals of 0.1. Now i want to make a 2x2 matrix of the 4 variable at every interval of e how do i code that?

e=0:0.1:30;

for i=1:length(e)

    m=9.1*10^-31;
    h=(6.63*10^-34)/(2*pi);
    v=(15*(1.6*10^-19));
    a=1*10^-10;
    b=2*10^-10;
    %igam=sqrt(-1)*sqrt((2*m/h)*((v-(e.*1.6*10^-19))));
    %qalt=sqrt((2*m/h)*((e.*(1.6*10^-19))-v));
    k=sqrt((2*m*(e.*(1.6*10^-19)))/h^2);
    E=e(i);
    if i<=150
        q(i)=sqrt(-1)*sqrt((2*m/h)*((v-(E.*1.6*10^-19))))
    else
        q(i)=sqrt((2*m/h)*((E.*(1.6*10^-19))-v));
    end

end

A11=((k+q)/(2*k))*exp(sqrt(-1)*q*a);

A12=((k-q)/(2*k))*exp(-sqrt(-1)*q*a);

A21=((k-q)/(2*k))*exp(sqrt(-1)*q*a);

A22=((k+q)/(2*k))*exp(-sqrt(-1)*q*a);

B11=((q+k)/(2*q))*exp(sqrt(-1)*k*b);

B12=((q-k)/(2*q))*exp(-sqrt(-1)*k*b);

B21=((q-k)/(2*q))*exp(sqrt(-1)*k*b);

B22=((q+k)/(2*q))*exp(-sqrt(-1)*k*b); % M1= [A11 A12]

M1=[A11 A12 ; A21 A22];

M2=[B11 B12; B21 B22];

This is my code so far. I want M1 and M2 to be 2x2 matrices of the variables i calculated, but I am creating just a single matrix for m1 and m2 that is 2x602

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by