Performing an Operation on a Matrix Using Complex Numbers

2 views (last 30 days)
I have a matrix with the operation perfomed as:
a = rand(10,10);
a_x = @(x) sum((x-a)./(x+a),'all');
aa = arrayfun(a_x,a);
I want the operation for each pair to be performed in complex format. For example for one pair of the matrix ( a(1) & a(2) ) points, it will be like:
complex(a(1),-a(2)) / complex(a(1),a(2)); %% a(1) - a(2)i / a(1) + a(2)i
Which will give me:
ans =
-0.0313 - 0.9995i
I want this operation (sum of all the relations for each point) to be performed for all the matrix components (may original matrix is 81*81).
MarshallSc on 7 Jan 2022
Yessir, including K,L = I,J, since I need the sum for each point, they need to be included.
This will give me a (81 x 81) in complex form for the aa (summing every relation for each point, same as):
a_x = @(x) sum((x-a)./(x+a),'all');
The difference is the subtraction in the nominator and summation in the denominator will be like:
a_x = @(x) sum ((x - ai)./(x + ai), 'all'): % obviously this is not correct, just wanted to show what I mean

Sign in to comment.

Accepted Answer

Matt J
Matt J on 7 Jan 2022
Edited: Matt J on 7 Jan 2022
result=reshape(C./conj(C) , [sz,sz]);
Matt J
Matt J on 7 Jan 2022
Edited: Matt J on 7 Jan 2022
That would just be,

Sign in to comment.

More Answers (1)

Matt J
Matt J on 7 Jan 2022
result=reshape( exp(1j*C), [sz,sz]);


Find more on Matrices and Arrays in Help Center and File Exchange


Community Treasure Hunt

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

Start Hunting!

Translated by