-1
我無法說服楓樹來簡化複雜的trig表達式。它出現的瓶頸是,我不知道如何告訴楓樹,它的確定以簡化般的表情:如何使用maple簡化包含arccos和cos的trig表達式?
arccos(cos(x))
到
x
相反,如果我發出:
simplify(arccos(cos(x)));
我剛剛得到
arccos(cos(x));
是否有一套我應該使用的assume
?我的實際表達式要複雜得多,所以我更喜歡一個通用的解決方案,其中arccos和cos中的表達式可能每個都是複雜的表達式。
更新:
這裏的更復雜simplify
例子,其中本想出了(或者至少是我認爲這是問題):
# Angles
hac := arccos((lab^2 + lbc^2 - lca^2)/(2*lab*lbc)):
hcd := arccos((lbc^2 + lbd^2 - lcd^2)/(2*lbc*lbd)):
had := hac+hcd:
# length of AD
lad := sqrt(lab^2 + lbd^2 - 2*lab*lbd*cos(had)):
sin_hbd := lbd*sin(had)/lad:
sin_hbp := sin_hbd:
hbp := arcsin(sin_hbp):
hap := hac:
hab := Pi - hbp - hap:
# length of BP
lbp := lab*sin_hbp/sin(hab):
# factor we're looking for
s := lbp/lbc:
simplify(s);
生產:
lab lbd sin(%2)
-----------------------------------------------------------------------------------------------
2 2 1/2 lbd sin(%2)
(lab + lbd - 2 lab lbd cos(%2)) sin(arcsin(------------------------------------) + %1) lbc
2 2 1/2
(lab + lbd - 2 lab lbd cos(%2))
2 2 2
lab + lbc - lca
%1 := arccos(------------------)
2 lab lbc
2 2 2
lbc + lbd - lcd
%2 := %1 + arccos(------------------)
2 lbc lbd
符號lab
,lbc
,lca
是長度的三角形。類似地lab
,lbd
,lcd
。所以角度h*
應該都在0和Pi之間。我不確定先驗s
的表達有多簡單。但到目前爲止,我所有的假設嘗試(例如明確添加三角不等式,添加下面的宏觀部分答案等界限)並沒有產生任何效果。
這將工作,如果裏面COS表達很簡單。但是,假設cos內部的表達非常複雜。將不得不手動拉出來建立這個假設? –
顯然這需要推論。你需要從某個地方開始,因爲你沒有明確指出我使用最簡單的一種情況。如果你想要另一個,那麼完整地指定它。你的問題是如此普遍,否則你實際提出的問題的答案需要「solve」命令的完整內部代碼作爲響應。你真的需要提供一個有代表性的例子。請注意,使用計算機代數系統和語言可以很容易地將參數提取出來。要拋出的東西(例如'solve'等)將取決於這個例子。顯示一個。 – acer
到目前爲止,你的問題的數量是這樣的:在什麼情況下一般表達式會大於零而小於Pi? – acer