三个圆相切,如何求最小圆的半径?
假设两个圆的半径分别是a b求红色的小圆的半径。 本帖最后由 mathematica 于 2020-11-20 09:29 编辑
假设两个大圆的半径分别是2与3
利用中间的角相加等于180,两个反正弦,一个反余弦,相加得到180度,
直接用mathematica的solve函数,求解不出结果,所以先用数值求解,然后再用代数近似求解解析解!
Clear["Global`*"];
(*计算余弦值子函数,利用三边计算余弦值*)
cs:=(a^2+b^2-c^2)/(2*a*b)
a=2;
b=3;
f=ArcSin[(b-x)/(b+x)]+ArcSin[(a-x)/(a+x)]+ArcCos@cs-Pi
out=x/.FindRoot
RootApproximant
结果是:
\
数值是
0.6061230866018628216325911035293032964086302321199584588076891929884754705122196815216868027443171822 本帖最后由 mathematica 于 2020-11-20 09:45 编辑
Clear["Global`*"];
(*计算余弦值子函数,利用三边计算余弦值*)
cs:=(a^2+b^2-c^2)/(2*a*b)
a=2;
b=3;
f=ArcCos[(b-x)/(b+x)]+ArcCos@cs-ArcCos[(b-a)/(b+a)]
Solve
按照左上角的两个反余弦的角相加等于大的反余弦的角。但是软件还是求解不出来!
\[\cos ^{-1}\left(\frac{a (b-x)+b (b+x)}{(a+b) (b+x)}\right)-\cos ^{-1}\left(\frac{b-a}{a+b}\right)+\cos ^{-1}\left(\frac{b-x}{b+x}\right)=0\]
求解这个方程就可以了! mathematica 发表于 2020-11-20 09:43
按照左上角的两个反余弦的角相加等于大的反余弦的角。但是软件还是求解不出来!
\[\cos ^{-1}\left(\f ...
Clear["Global`*"];
(*计算余弦值子函数,利用三边计算余弦值*)
cs:=(a^2+b^2-c^2)/(2*a*b)
(*计算两个角的余弦,左上角的两个角相加等于大的角(余弦的结果是(b-a)/(b+a))*)
u=(b-x)/(b+x)
v=cs
(*根据两角相加的余弦公式,求出两角和的余弦*)
aaa=u*v-Sqrt[(1-u^2)*(1-v^2)]-(b-a)/(b+a)//FullSimplify
bbb=FullSimplify@Solve
(*代入特殊值,看是不是增根*)
(aaa/.bbb)/.{a->2,b->3}//FullSimplify
软件太笨了,不得不人工化简,然后用软件求解,最后的求解结果是\[\left\{\left\{x\to \frac{a b}{\left(\sqrt{a}+\sqrt{b}\right)^2}\right\},\left\{x\to \frac{a b}{\left(\sqrt{a}-\sqrt{b}\right)^2}\right\}\right\}\],后者是增根 本帖最后由 mathematica 于 2020-11-20 10:47 编辑
mathematica 发表于 2020-11-20 10:10
软件太笨了,不得不人工化简,然后用软件求解,最后的求解结果是\[\left\{\left\{x\to \frac{a b}{\lef ...
Clear["Global`*"];
(*假设B圆的圆心是(0,b),A圆圆心(xa,a),小圆圆心(xc,c),根据三个圆两两外切,
圆心的距离等于半径和,列三个等式,求解三个未知数*)
aaa=FullSimplify@Solve[{
(0-xc)^2+(b-c)^2==(b+c)^2,
(0-xa)^2+(b-a)^2==(b+a)^2,
(xc-xa)^2+(c-a)^2==(c+a)^2
},{xc,xa,c}]
Grid
求解结果
\[\begin{array}{ccc}
\text{xc}\to -\frac{2 \sqrt{a} b}{\sqrt{a}-\sqrt{b}} & \text{xa}\to 2 \sqrt{a} \sqrt{b} & c\to \frac{a b}{\left(\sqrt{a}-\sqrt{b}\right)^2} \\
\text{xc}\to \frac{2 \sqrt{a} b}{\sqrt{a}+\sqrt{b}} & \text{xa}\to 2 \sqrt{a} \sqrt{b} & c\to \frac{a b}{\left(\sqrt{a}+\sqrt{b}\right)^2} \\
\text{xc}\to -\frac{2 \sqrt{a} b}{\sqrt{a}+\sqrt{b}} & \text{xa}\to -2 \sqrt{a} \sqrt{b} & c\to \frac{a b}{\left(\sqrt{a}+\sqrt{b}\right)^2} \\
\text{xc}\to \frac{2 \sqrt{a} b}{\sqrt{a}-\sqrt{b}} & \text{xa}\to -2 \sqrt{a} \sqrt{b} & c\to \frac{a b}{\left(\sqrt{a}-\sqrt{b}\right)^2} \\
\end{array}\]
方程解的几何意义:一个大圆,一个小圆,小圆在两个圆的下方相切,大圆在两个圆的上方相切,这个小圆与大圆都与直线相切
https://bbs.emath.ac.cn/forum.php?mod=redirect&goto=findpost&ptid=17087&pid=82793&fromuid=865
我感觉与这儿的有点联系! 本帖最后由 mathematica 于 2020-11-20 10:54 编辑
mathematica 发表于 2020-11-20 10:34
求解结果
\[\begin{array}{ccc}
\text{xc}\to -\frac{2 \sqrt{a} b}{\sqrt{a}-\sqrt{b}} & \text{ ...
这两个解满足等式
\[\frac{1}{\sqrt{c}}=\frac{1}{\sqrt{a}}+\frac{1}{\sqrt{b}}\],
\[\frac{1}{\sqrt{c}}=\frac{1}{\sqrt{a}}-\frac{1}{\sqrt{b}}\]
其中ab是两个已知的圆的半径(a<b),c是待求解的圆的半径.第一个在下面相切,第二个在上面相切 mathematica 发表于 2020-11-20 09:23
假设两个大圆的半径分别是2与3
利用中间的角相加等于180,两个反正弦,一个反余弦,相加得到180度,
直接 ...
非要解反三角方程的话,稍微变通一下就可以了
Solve+ArcSin[(a-x)/(a+x)]==Pi-ArcCos[((a+x)^2+(b+x)^2-(a+b)^2)/(2 (a+x) (b+x))]),x]//FullSimplify 直接用三遍勾股定理就行 `\sqrt{(a+c)^2-(a-c)^2}+\sqrt{(b+c)^2-(b-c)^2}=\sqrt{(a+b)^2-(a-b)^2}`,根号里面很简单,两边同时平方,解得 `c=\D\frac{ab}{(\sqrt{a}+\sqrt{b})^2}`. kastin 发表于 2020-11-20 15:19
直接用三遍勾股定理就行 `\sqrt{(a+c)^2-(a-c)^2}+\sqrt{(b+c)^2-(b-c)^2}=\sqrt{(a+b)^2-(a-b)^2}`,根号 ...
三个圆心构成的三角形的面积是(a+b+c)*a*b*c的平方根,有意思!
页:
[1]