|
这个题用复平面上的解析几何做是非常简单的。构图和设点方法为:设圆 O 为单位圆,圆心在坐标系原点。
H 点的坐标设为变量,令 H 点的坐标为 \(h=u+i v\),由于 H 在单位圆上,故 H 点的共轭坐标为 \(\overline{h}=1/h\) 。由此可求出\(BH\)线与圆O及椭圆的交点\(D\)、\(P\)的坐标。然后再算出\(PA\) 线与椭圆的交点 \(C\) 的坐标。继续算出\(CB\) 线与圆O的交点 \(F\) 的坐标。最后算出\(CD\) 与\(PF\) 线的交点\(E\)以及\(DF\) 线与\(OB\) 线的交点\(G\) 的坐标。
结果是 \(E\) 点坐标和 \(G\) 点坐标都是常数,都与 \(H\) 点的坐标无关。
在程序中点的名称都用大写字母表示,点的复数坐标都用小写字母表示。小写字母上加一横线表示其共轭复数。在这个计算体系中,点的坐标算出后,往往需要同时算出它的共轭复数。
用 mathematica 写的程序:
程序运行结果:
程序代码:- Clear["Global`*"];\!\(\*OverscriptBox[\(o\), \(_\)]\) = o = 0; a = I; \!\(\*OverscriptBox[\(a\), \(_\)]\) = -I; b = I/2; \!\(\*OverscriptBox[\(b\), \(_\)]\) = -I/2; h = u + I v; \!\(\*OverscriptBox[\(h\), \(_\)]\) = 1/h; W1 = {d, \!\(\*OverscriptBox[\(d\), \(_\)]\)} /. Simplify@Solve[{(d - 0) (\!\(\*OverscriptBox[\(d\), \(_\)]\) - 0) == 1, (h - b)/(\!\(\*OverscriptBox[\(h\), \(_\)]\) - \!\(\*OverscriptBox[\(b\), \(_\)]\)) == (d - b)/(\!\(\*OverscriptBox[\(d\), \(_\)]\) - \!\(\*OverscriptBox[\(b\), \(_\)]\)), d != h}, {d, \!\(\*OverscriptBox[\(d\), \(_\)]\)}] // Flatten;d = Part[W1, 1]; \!\(\*OverscriptBox[\(d\), \(_\)]\) = Part[W1, 2]; Print["D = ", d];W2 = {p, \!\(\*OverscriptBox[\(p\), \(_\)]\)} /. Simplify@Solve[{(p + \!\(\*OverscriptBox[\(p\), \(_\)]\))^2/20 - (p - \!\(\*OverscriptBox[\(p\), \(_\)]\))^2/16 == 1, (h - b)/(\!\(\*OverscriptBox[\(h\), \(_\)]\) - \!\(\*OverscriptBox[\(b\), \(_\)]\)) == (h - p)/(\!\(\*OverscriptBox[\(h\), \(_\)]\) - \!\(\*OverscriptBox[\(p\), \(_\)]\))}, {p, \!\(\*OverscriptBox[\(p\), \(_\)]\)}] // Flatten;p = Part[W2, 1]; \!\(\*OverscriptBox[\(p\), \(_\)]\) = Part[W2, 2]; Print["P = ", p];W3 = {c, \!\(\*OverscriptBox[\(c\), \(_\)]\)} /. Simplify@Solve[{(c + \!\(\*OverscriptBox[\(c\), \(_\)]\))^2/20 - (c - \!\(\*OverscriptBox[\(c\), \(_\)]\))^2/16 == 1, (a - c)/(\!\(\*OverscriptBox[\(a\), \(_\)]\) - \!\(\*OverscriptBox[\(c\), \(_\)]\)) == (a - p)/(\!\(\*OverscriptBox[\(a\), \(_\)]\) - \!\(\*OverscriptBox[\(p\), \(_\)]\)), c != p}, {c, \!\(\*OverscriptBox[\(c\), \(_\)]\)}] // Flatten;c = Part[W3, 1]; \!\(\*OverscriptBox[\(c\), \(_\)]\) = Part[W3, 2]; Print["C = ", c];W4 = {f, \!\(\*OverscriptBox[\(f\), \(_\)]\)} /. Simplify@Solve[{(f - 0) (\!\(\*OverscriptBox[\(f\), \(_\)]\) - 0) == 1, (f - b)/(\!\(\*OverscriptBox[\(f\), \(_\)]\) - \!\(\*OverscriptBox[\(b\), \(_\)]\)) == (c - b)/(\!\(\*OverscriptBox[\(c\), \(_\)]\) - \!\(\*OverscriptBox[\(b\), \(_\)]\))}, {f, \!\(\*OverscriptBox[\(f\), \(_\)]\)}] // Flatten;f = Part[W4, 3]; \!\(\*OverscriptBox[\(f\), \(_\)]\) = Part[W4, 4]; Print["F = ", f];W5 = {e, \!\(\*OverscriptBox[\(e\), \(_\)]\)} /. Simplify@Solve[{(c - d)/(\!\(\*OverscriptBox[\(c\), \(_\)]\) - \!\(\*OverscriptBox[\(d\), \(_\)]\)) == (d - e)/(\!\(\*OverscriptBox[\(d\), \(_\)]\) - \!\(\*OverscriptBox[\(e\), \(_\)]\)), (p - f)/(\!\(\*OverscriptBox[\(p\), \(_\)]\) - \!\(\*OverscriptBox[\(f\), \(_\)]\)) == (f - e)/(\!\(\*OverscriptBox[\(f\), \(_\)]\) - \!\(\*OverscriptBox[\(e\), \(_\)]\))}, {e, \!\(\*OverscriptBox[\(e\), \(_\)]\)}] // Flatten;e = Part[W5, 1]; \!\(\*OverscriptBox[\(e\), \(_\)]\) = Part[W5, 2]; Print["E = ", e];W6 = {g, \!\(\*OverscriptBox[\(g\), \(_\)]\)} /. Simplify@Solve[{(f - d)/(\!\(\*OverscriptBox[\(f\), \(_\)]\) - \!\(\*OverscriptBox[\(d\), \(_\)]\)) == (d - g)/(\!\(\*OverscriptBox[\(d\), \(_\)]\) - \!\(\*OverscriptBox[\(g\), \(_\)]\)), (o - b)/(\!\(\*OverscriptBox[\(o\), \(_\)]\) - \!\(\*OverscriptBox[\(b\), \(_\)]\)) == (o - g)/(\!\(\*OverscriptBox[\(o\), \(_\)]\) - \!\(\*OverscriptBox[\(g\), \(_\)]\))}, {g, \!\(\*OverscriptBox[\(g\), \(_\)]\)}] // Flatten;g = Part[W6, 1]; \!\(\*OverscriptBox[\(g\), \(_\)]\) = Part[W6, 2]; Print["G = ", g];
复制代码 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|