如果说我有一个功能:
singlepattern = Cosh[theta] + Cosh[3theta]
如果我想用
替换Cosh [θ],我如何得到函数x的理性表达式? "Cosh[theta] = ( x )/ 2 "
表达
答案 0 :(得分:2)
我把这个问题重新作为一项功课。你应该研究ChebyshevT
多项式。它具有ChebyshevT[3, Cos[th] ]==Cos[3*th]
的属性。所以对于你的问题,答案是
In[236]:= x/2 + ChebyshevT[3, x/2]
Out[236]= -x + x^3/2
或者,您可以使用TrigExpand
:
In[237]:= Cos[th] + Cos[3*th] // TrigExpand
Out[237]= Cos[th] + Cos[th]^3 - 3 Cos[th] Sin[th]^2
In[238]:= % /. Sin[th]^2 -> 1 - Cos[th]^2 // Expand
Out[238]= -2 Cos[th] + 4 Cos[th]^3
In[239]:= % /. Cos[th] -> x/2
Out[239]= -x + x^3/2
<小时/> 编辑以上与明确问题有关的原因是某些
Cosh[theta] == Cos[I*u]
的{{1}}。由于u
或u
是正式的,因此结果将成立。
答案 1 :(得分:2)
使用Solve
解析theta
,然后替换,Expand
和Simplify
:
In[16]:= TrigExpand[Cosh[3 theta] + Cosh[theta]] /.
Solve[Cosh[theta] == (x)/2, theta] // FullSimplify
During evaluation of In[16]:= Solve::ifun: Inverse functions are being used by Solve,
so some solutions may not be found; use Reduce for complete solution information. >>
Out[16]= {1/2 x (-2 + x^2), 1/2 x (-2 + x^2)}
答案 2 :(得分:1)
您可能会对此感兴趣:
http://www.wolframalpha.com/input/?i=cosh%28x%29+%2B+cosh%283 * X%29