33 views (last 30 days)

Show older comments

I would like to compute the arccos for a matrix. I know when I want to find log(), exp(), and sqrt () for a matrix , we use logm(A), expm(A) and sqrtm(A) where A is a matrix.

I want to find the following:

x=acos(sqrtm(A)\eye(n))

so, Is it correct to compute it like this ? Or we need to use arccosm(sqrtm(A)\eye(n))? Thank you.

Walter Roberson
on 5 Jul 2020

It depends what you are trying to calculate.

And so we could potentially generalize that for matrices, there might be some meaning to

arccosm = @(z) 1i * logm(z + sqrtm(z^2 - 1))

I am having difficulty thinking of a context in which there could be physical meaning for this.

If we substitute in 1/sqrtm(A) then

1i*logm(sqrtm(A\eye(n) - 1) + sqrtm(A)\eye(m))

But is there a meaning for this??

Walter Roberson
on 7 Jul 2020

f1 = @(x) acos(sqrtm(x)^(-1)) * sqrtm(x)^(-1);

f2 = @(x) acos(sqrtm(x)/eye(size(x,1))) / sqrtm(x);

f3 = @(x) acos(1./sqrt(x)) ./ sqrt(x);

f1(A)

f2(A)

f3(A)

Try them all and decide which one is the right solution for you.

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

Start Hunting!