用Mathematica处理一个几何问题-mathematic怎么用

2023-08-11 21:20:44

 

这里,要处理的问题是:

给定△UVW,要求在平面上找到D点,使得△UVD、△UWD、△VWD的内切圆半径相等!

问题

一般情况下,平面上满足条件的D点,应该有四个,如下图,其中一个位于△UVW内部,另外三个则在△UVW外面!

D的四个情形

这里,我们不考虑能否用尺规作图法找到这四个D点,而是用强大的Mathematica软件,来动态的模拟这个问题。

给定△UVW,它的三个顶点分别是:U 、 V 、W;

那么,它的三边边长是:

{u, v, w} = {Norm[V - W], Norm[W - U], Norm[U - V]};

它的面积为:

S[U_, V_, W_] := Sqrt[(u + v + w) (u + v - w) (u - v + w) (-u + v + w)]/4;

它的周长为:

L[U_, V_, W_] := u + v + w;

它的内切圆半径为:

r[U_, V_, W_] := S[U, V, W]/L[U, V, W];

设平面上的点X,使得△XUV和△XUW的内切圆半径相等,那么X应该满足什么条件? 当然是:

r[U, V, X] == r[U, X, W],

即:

S[U, V, X]/L[U, V, X] == S[U, X, W]/L[U, X, W],

进而化成:

S[U, V, X] L[U, X, W] == L[U, V, X] S[U, X, W];——这就是X的轨迹曲线的方程。

以上这些是我们的自定义函数,整合到一起,如下图。

自定义的函数

然后是实现人机互动的代码!我们把U、V、W以定位器的形式展示出来(所谓的定位器,就是各类几何图画板里面的自由点),这样,就可以在运行出来之后,手动拖动U、V、W的位置,实现人机互动。

可以实现人机互动的代码

互动

本人水平低,所写代码难免会有不足之处,请大家谅解!


以上就是关于《用Mathematica处理一个几何问题-mathematic怎么用》的全部内容,本文网址:https://www.7ca.cn/baike/64144.shtml,如对您有帮助可以分享给好友,谢谢。
标签:
声明

排行榜