求解cos()和sin()中的变量

Solving for variables inside cos() and sin()

本文关键字:变量 cos 求解 sin      更新时间:2023-10-16
double g[2][2];
g[0][0] = cos(M_PI*0.5*(c - w*0.5));
g[0][1] = sin(M_PI*0.5*(c - w*0.5));
g[1][0] = cos(M_PI*0.5*(c + w*0.5));
g[1][1] = sin(M_PI*0.5*(c + w*0.5));

给出矩阵g。我如何重写上面的式子来求(c,w)的值?

使用atan2来确定pi/2*(c-w/2)和pi/2*(c+w/2)——当然,两者都存在整数*2pi的模糊性,对此你无能为力。你知道有a b使得c-w/2 = a + 4*m和c+w/2 = b + 4*n其中m和n是未知整数

现在c = (a+b)/2 + 2*(m+n)和w = (b-a) + 4*(n-m)其中,m,n是任意未知整数

你可能更喜欢写,比如,k=m+n;则c = (a+b)/2 + 2k, w = (b-a) + 4k - 4m其中k,m为任意未知整数

g1 = cos(a - b)
g2 = sin(a - b)
g3 = cos(a + b)
g4 = sin(a + b)

atan2(g1,g2) = A = a - b [+ N*2*PI]
atan2(g3,g4) = B = a + b [+ N*2*PI]

a = (A + B) / 2
b = B - a

这是一个数学问题,而不是一个编程问题。