|
楼主 |
TSC999
发表于 2023-11-13 10:29
例 42:
如图,圆O 为△ABC 的外接圆,BM⊥AC,CN⊥AB,E=BM ∩ AC,F=CN ∩ AB,D 为 BC 中点,P=DE ∩ CM,Q=DF ∩ BN,G∈BC 满足 QGDP 四点共圆,J=OB ∩ QG,K=OC ∩ PG,X=JK ∩ AC,Y=JK ∩ AB,L=PX ∩ QY,证明 A、O、L 三点共线。
- Clear["Global`*"]; (*令△ABC的外接圆为单位圆O,BC边平行于实轴,AB、AC的复斜率分别为 u^2、v^2 *)
- \!\(\*OverscriptBox[\(o\), \(_\)]\) = o = 0; a = I u v; \!\(\*OverscriptBox[\(a\), \(_\)]\) = 1/(I u v); b = (I u)/v;
- \!\(\*OverscriptBox[\(b\), \(_\)]\) = v/(I u); c = (I v)/u; \!\(\*OverscriptBox[\(c\), \(_\)]\) = u/(I v);
- d = (b + c)/2; \!\(\*OverscriptBox[\(d\), \(_\)]\) = (\!\(\*OverscriptBox[\(b\), \(_\)]\) + \!\(\*OverscriptBox[\(c\), \(_\)]\))/2;
- Foot[p_, a_, b_] := p/2 + ( \!\(\*OverscriptBox[\(a\), \(_\)]\) b - a \!\(\*OverscriptBox[\(b\), \(_\)]\) + \!\(\*OverscriptBox[\(p\), \(_\)]\) (a - b))/(2 (\!\(\*OverscriptBox[\(a\), \(_\)]\) - \!\(\*OverscriptBox[\(b\), \(_\)]\))); (* 从P点向AB直线引垂线,垂足的复坐标 *)
- \!\(\*OverscriptBox[\(Foot\), \(_\)]\)[p_, a_, b_] := \!\(\*OverscriptBox[\(p\), \(_\)]\)/2 + (a \!\(\*OverscriptBox[\(b\), \(_\)]\) - \!\(\*OverscriptBox[\(a\), \(_\)]\) b + p (\!\(\*OverscriptBox[\(a\), \(_\)]\) - \!\(\*OverscriptBox[\(b\), \(_\)]\)))/(2 (a - b));
- e = Simplify@Foot[b, a, c]; \!\(\*OverscriptBox[\(e\), \(_\)]\) = Simplify@\!\(\*OverscriptBox[\(Foot\), \(_\)]\)[b, a, c];
- f = Simplify@Foot[c, a, b]; \!\(\*OverscriptBox[\(f\), \(_\)]\) = Simplify@\!\(\*OverscriptBox[\(Foot\), \(_\)]\)[c, a, b];
- k[a_, b_] := (a - b)/(\!\(\*OverscriptBox[\(a\), \(_\)]\) - \!\(\*OverscriptBox[\(b\), \(_\)]\)); (*复斜率定义*)
- W1 = {m, \!\(\*OverscriptBox[\(m\), \(_\)]\)} /. Simplify@Solve[{(o - m) (\!\(\*OverscriptBox[\(o\), \(_\)]\) - \!\(\*OverscriptBox[\(m\), \(_\)]\)) == 1, k[b, e] == k[b, m]}, {m, \!\(\*OverscriptBox[\(m\), \(_\)]\)}] // Flatten;
- m = Part[W1, 1]; \!\(\*OverscriptBox[\(m\), \(_\)]\) = Part[W1, 2];
- W2 = {n, \!\(\*OverscriptBox[\(n\), \(_\)]\)} /. Simplify@Solve[{(o - n) (\!\(\*OverscriptBox[\(o\), \(_\)]\) - \!\(\*OverscriptBox[\(n\), \(_\)]\)) == 1, k[c, f] == k[c, n]}, {n, \!\(\*OverscriptBox[\(n\), \(_\)]\)}] // Flatten;
- n = Part[W2, 1]; \!\(\*OverscriptBox[\(n\), \(_\)]\) = Part[W2, 2];
- (*过A1点、复斜率等于k1的直线,与过A2点、复斜率等于k2的直线的交点:*)
- Jd[k1_, a1_, k2_, a2_] := -((k2 (a1 - k1 \!\(\*OverscriptBox[\(a1\), \(_\)]\)) - k1 (a2 - k2 \!\(\*OverscriptBox[\(a2\), \(_\)]\)))/(k1 - k2));\!\(\*OverscriptBox[\(Jd\), \(_\)]\)[k1_, a1_, k2_, a2_] := -((a1 - k1 \!\(\*OverscriptBox[\(a1\), \(_\)]\) - (a2 - k2 \!\(\*OverscriptBox[\(a2\), \(_\)]\)))/(k1 - k2));
- p = Simplify@Jd[k[d, e], d, k[c, m], c]; \!\(\*OverscriptBox[\(p\), \(_\)]\) = Simplify@\!\(\*OverscriptBox[\(Jd\), \(_\)]\)[k[d, e], d, k[c, m], c];q = Simplify@Jd[k[d, f], d, k[b, n], b]; \!\(\*OverscriptBox[\(q\), \(_\)]\) = Simplify@\!\(\*OverscriptBox[\(Jd\), \(_\)]\)[k[d, f], d, k[b, n], b];
- WX[a_, b_, c_] := (a \!\(\*OverscriptBox[\(a\), \(_\)]\) (c - b) + b \!\(\*OverscriptBox[\(b\), \(_\)]\) (a - c) + c \!\(\*OverscriptBox[\(c\), \(_\)]\) (b - a) )/(\!\(\*OverscriptBox[\(a\), \(_\)]\) (c - b) + \!\(\*OverscriptBox[\(b\), \(_\)]\) (a - c) +
- \!\(\*OverscriptBox[\(c\), \(_\)]\) (b - a));(*三角形 ABC 的外心坐标:*)
- \!\(\*OverscriptBox[\(WX\), \(_\)]\)[a_, b_, c_] := (\!\(\*OverscriptBox[\(a\), \(_\)]\) \!\(\*OverscriptBox[\(b\), \(_\)]\) (a - b) +
- \!\(\*OverscriptBox[\(b\), \(_\)]\) \!\(\*OverscriptBox[\(c\), \(_\)]\) (b - c) + \!\(\*OverscriptBox[\(c\), \(_\)]\)
- \!\(\*OverscriptBox[\(a\), \(_\)]\) (c - a))/(\!\(\*OverscriptBox[\(a\), \(_\)]\) (c - b) + \!\(\*OverscriptBox[\(b\), \(_\)]\) (a - c) +
- \!\(\*OverscriptBox[\(c\), \(_\)]\) (b - a));
- o1 = Simplify@WX[p, q, d]; \!\(\*OverscriptBox[\(o1\), \(_\)]\) = Simplify@\!\(\*OverscriptBox[\(WX\), \(_\)]\)[p, q, d];
- W3 = {g, \!\(\*OverscriptBox[\(g\), \(_\)]\)} /. Simplify@Solve[{(o1 - g) (\!\(\*OverscriptBox[\(o1\), \(_\)]\) - \!\(\*OverscriptBox[\(g\), \(_\)]\)) == (o1 - d) (\!\(\*OverscriptBox[\(o1\), \(_\)]\) - \!\(\*OverscriptBox[\(d\), \(_\)]\)), k[b, g] == k[b, c], g != d}, {g,
- \!\(\*OverscriptBox[\(g\), \(_\)]\)}] // Flatten;g = Part[W3, 1]; \!\(\*OverscriptBox[\(g\), \(_\)]\) = Part[W3, 2];
- j = Simplify@Jd[k[o, b], o, k[g, q], g]; \!\(\*OverscriptBox[\(j\), \(_\)]\) = Simplify@\!\(\*OverscriptBox[\(Jd\), \(_\)]\)[k[o, b], o, k[g, q], g];K = Simplify@Jd[k[o, c], o, k[g, p], g]; \!\(\*OverscriptBox[\(K\), \(_\)]\) = Simplify@\!\(\*OverscriptBox[\(Jd\), \(_\)]\)[k[o, c], o, k[g, p], g];
- x = Simplify@Jd[k[j, K], j, k[a, c], c]; \!\(\*OverscriptBox[\(x\), \(_\)]\) = Simplify@\!\(\*OverscriptBox[\(Jd\), \(_\)]\)[k[j, K], j, k[a, c], c];
- y = Simplify@Jd[k[j, K], j, k[a, b], b]; \!\(\*OverscriptBox[\(y\), \(_\)]\) = Simplify@\!\(\*OverscriptBox[\(Jd\), \(_\)]\)[k[j, K], j, k[a, b], b];
- L = Simplify@Jd[k[p, x], p, k[q, y], q]; \!\(\*OverscriptBox[\(L\), \(_\)]\) = Simplify@\!\(\*OverscriptBox[\(Jd\), \(_\)]\)[k[p, x], p, k[q, y], q];
- Print["AO的复斜率 kAO = ", Simplify[k[a, o]]];
- Print["AL的复斜率 kAL = ", Simplify[k[a, L]]];
- Print["由于 kAO = kAL,所以 AOL 三点共线。"];
复制代码
运行结果:
|
|