complex number representation as real and imaginary part
31 ビュー (過去 30 日間)
古いコメントを表示
syms x real
syms t real
e=cos(x)+1i*sin(x)
real(e)
u=(cos(x)+1i*sin(x))/((1+((1/(0.1)^4)-1)*(cos(4*t)+1i*sin(4*t))))
v=sym(((1/(0.1)^4)-1))*(cos(4*x)+1i*sin(4*x))
m1=real(u)
m2=(m1)^(1/4)
x=0.5:0.5:5
t=1
% mu=0.1
row=0
for i=1:length(x)
row=row+1
col=0
for j=1:length(t)
col=col+1
u(row,col)=m2(x(i),t(j));
end
end
The above code shows error when I put the power (1/4) on the denominator of u=(cos(x)+1i*sin(x))/((1+((1/(0.1)^4)-1)*(cos(4*t)+1i*sin(4*t)))) . I dont get it why it is so ? So I find the real part separtely and find the real part . But now again the problem with the for loop why the error is there ? But is the option for that
0 件のコメント
採用された回答
Sameer
2024 年 12 月 6 日 6:24
It looks like there are a few issues in your code
1. When you try to take the real part and then raise it to the power of 1/4, it might not work as expected due to the complex nature of the expression.
2. The error in the for loop is likely due to the way you are trying to index and assign values to 'u'. Since 'u' is initially defined as a symbolic expression, you need to ensure that you're evaluating it correctly for each value of 'x' and 't'.
Here's how you can revise your code:
syms x t real
e = cos(x) + 1i*sin(x);
u = (cos(x) + 1i*sin(x)) / (1 + ((1/(0.1)^4) - 1) * (cos(4*t) + 1i*sin(4*t)));
v = sym(((1/(0.1)^4) - 1)) * (cos(4*x) + 1i*sin(4*x));
% Extract the real part of u
m1 = real(u);
% Raise the real part to the power of 1/4
m2 = m1^(1/4);
% Define the range for x and t
x_vals = 0.5:0.5:5;
t_vals = 1;
% Initialize the result matrix
result = zeros(length(x_vals), length(t_vals));
% Evaluate m2 for each combination of x and t
for i = 1:length(x_vals)
for j = 1:length(t_vals)
result(i, j) = double(subs(m2, {x, t}, {x_vals(i), t_vals(j)}));
end
end
disp(result);
Hope this helps!
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Number Theory についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!