- 注册时间
- 2015-10-15
- 最后登录
- 1970-1-1
- 威望
- 星
- 金币
- 枚
- 贡献
- 分
- 经验
- 点
- 鲜花
- 朵
- 魅力
- 点
- 上传
- 次
- 下载
- 次
- 积分
- 2202
- 在线时间
- 小时
|
发表于 2021-12-6 18:24:10
|
显示全部楼层
- Clear["Global`*"]; (*设三角形ABC的外接圆为单位圆,C 点在正 x 轴上*)
- \!\(\*OverscriptBox[\(o\), \(_\)]\) = o = 0;
- \!\(\*OverscriptBox[\(c\), \(_\)]\) = c = 1;
- \!\(\*OverscriptBox[\(a\), \(_\)]\) = 1/a; b = t^2;
- \!\(\*OverscriptBox[\(b\), \(_\)]\) = 1/b;
- \!\(\*OverscriptBox[\(t\), \(_\)]\) = 1/t;
- \!\(\*OverscriptBox[\(p\), \(_\)]\) = 1/p;
- h = a + b + c(*当三角形外心在坐标原点时此式成立*);
- \!\(\*OverscriptBox[\(h\), \(_\)]\) =
- \!\(\*OverscriptBox[\(a\), \(_\)]\) +
- \!\(\*OverscriptBox[\(b\), \(_\)]\) +
- \!\(\*OverscriptBox[\(c\), \(_\)]\); m = (a + h)/2;(* M是A、H的中点*)
- \!\(\*OverscriptBox[\(m\), \(_\)]\) = (
- \!\(\*OverscriptBox[\(a\), \(_\)]\) +
- \!\(\*OverscriptBox[\(h\), \(_\)]\))/2;
- k[a_, b_] := (a - b)/(
- \!\(\*OverscriptBox[\(a\), \(_\)]\) -
- \!\(\*OverscriptBox[\(b\), \(_\)]\));
- \!\(\*OverscriptBox[\(k\), \(_\)]\)[a_, b_] := 1/k[a, b];(*复斜率定义*)
- 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));
- (*复斜率等于k1且经过A1点的直线,与复斜率等于k2且经过A2点的直线,两直线的交点*)
- FourPoint[a_, b_, c_, d_] := ((
- \!\(\*OverscriptBox[\(c\), \(_\)]\) d - c
- \!\(\*OverscriptBox[\(d\), \(_\)]\)) (a - b) - (
- \!\(\*OverscriptBox[\(a\), \(_\)]\) b - a
- \!\(\*OverscriptBox[\(b\), \(_\)]\)) (c - d))/((a - b) (
- \!\(\*OverscriptBox[\(c\), \(_\)]\) -
- \!\(\*OverscriptBox[\(d\), \(_\)]\)) - (
- \!\(\*OverscriptBox[\(a\), \(_\)]\) -
- \!\(\*OverscriptBox[\(b\), \(_\)]\)) (c - d));
- \!\(\*OverscriptBox[\(FourPoint\), \(_\)]\)[a_, b_, c_, d_] := -(((c
- \!\(\*OverscriptBox[\(d\), \(_\)]\) -
- \!\(\*OverscriptBox[\(c\), \(_\)]\) d) (
- \!\(\*OverscriptBox[\(a\), \(_\)]\) -
- \!\(\*OverscriptBox[\(b\), \(_\)]\)) - ( a
- \!\(\*OverscriptBox[\(b\), \(_\)]\) -
- \!\(\*OverscriptBox[\(a\), \(_\)]\) b) (
- \!\(\*OverscriptBox[\(c\), \(_\)]\) -
- \!\(\*OverscriptBox[\(d\), \(_\)]\)))/((a - b) (
- \!\(\*OverscriptBox[\(c\), \(_\)]\) -
- \!\(\*OverscriptBox[\(d\), \(_\)]\)) - (
- \!\(\*OverscriptBox[\(a\), \(_\)]\) -
- \!\(\*OverscriptBox[\(b\), \(_\)]\)) (c - d)));
- (*过A、B点的直线与过C、D点的直线的交点*)
- Duichengdian[a_, b_, p_] := (
- \!\(\*OverscriptBox[\(a\), \(_\)]\) b - a
- \!\(\*OverscriptBox[\(b\), \(_\)]\) +
- \!\(\*OverscriptBox[\(p\), \(_\)]\) (a - b))/(
- \!\(\*OverscriptBox[\(a\), \(_\)]\) -
- \!\(\*OverscriptBox[\(b\), \(_\)]\));(*P关于直线AB的镜像点*)
- \!\(\*OverscriptBox[\(Duichengdian\), \(_\)]\)[a_, b_, p_] := (a
- \!\(\*OverscriptBox[\(b\), \(_\)]\) -
- \!\(\*OverscriptBox[\(a\), \(_\)]\) b + p (
- \!\(\*OverscriptBox[\(a\), \(_\)]\) -
- \!\(\*OverscriptBox[\(b\), \(_\)]\)))/(a - b);
- (*右边语句错了,不但计算结果不对,并且发生程序开头不能加上清除所有变量语句的奇怪现象o1 =Simplify[ Jd[a b, m, \
- -a t, a]]; Overscript[o1, _] =Simplify[Overscript[Jd, _][a b, m, -a \
- t, a]];*)
- o1 = Simplify[ Jd[-k[a, h], m, k[a, t], a]];
-
- \!\(\*OverscriptBox[\(o1\), \(_\)]\) = Simplify[
- \!\(\*OverscriptBox[\(Jd\), \(_\)]\)[-k[a, h], m, k[a, t], a]];
- Print["o1=", o1, ", \!\(\*OverscriptBox[\(o1\), \(_\)]\)=",
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)];
- d = Simplify[ a b (
- \!\(\*OverscriptBox[\(a\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)) + o1];
- \!\(\*OverscriptBox[\(d\), \(_\)]\) = Simplify[
- \!\(\*OverscriptBox[\(a\), \(_\)]\)
- \!\(\*OverscriptBox[\(b\), \(_\)]\) (a - o1) +
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)];
- Print["d=", d, ", \!\(\*OverscriptBox[\(d\), \(_\)]\)=",
- \!\(\*OverscriptBox[\(d\), \(_\)]\)];
- e = Simplify[ a c (
- \!\(\*OverscriptBox[\(a\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)) + o1];
- \!\(\*OverscriptBox[\(e\), \(_\)]\) = Simplify[
- \!\(\*OverscriptBox[\(a\), \(_\)]\)
- \!\(\*OverscriptBox[\(c\), \(_\)]\) (a - o1) +
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)];
- Print["e=", e, ", \!\(\*OverscriptBox[\(e\), \(_\)]\)=",
- \!\(\*OverscriptBox[\(e\), \(_\)]\)];
- x = Simplify[Duichengdian[o, o1, a]];
- \!\(\*OverscriptBox[\(x\), \(_\)]\) = Simplify[
- \!\(\*OverscriptBox[\(Duichengdian\), \(_\)]\)[o, o1, a]];
- Print["x=", x, ", \!\(\*OverscriptBox[\(x\), \(_\)]\)=",
- \!\(\*OverscriptBox[\(x\), \(_\)]\)];
- q = Simplify[-(k[x, d]/x)];
- \!\(\*OverscriptBox[\(q\), \(_\)]\) = Simplify[1/q]; p =
- Simplify[-(k[x, e]/x)];
- \!\(\*OverscriptBox[\(p\), \(_\)]\) = Simplify[1/p];
- Print["p=", p, ", \!\(\*OverscriptBox[\(p\), \(_\)]\)=",
- \!\(\*OverscriptBox[\(p\), \(_\)]\)];
- Print["q=", q, ", \!\(\*OverscriptBox[\(q\), \(_\)]\)=",
- \!\(\*OverscriptBox[\(q\), \(_\)]\)];
- s = Simplify[FourPoint[q, e, p, d]];
- \!\(\*OverscriptBox[\(s\), \(_\)]\) = Simplify[
- \!\(\*OverscriptBox[\(FourPoint\), \(_\)]\)[q, e, p, d]];
- s1 = Simplify[-k[q, e] (
- \!\(\*OverscriptBox[\(e\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)) + o1]; s2 = Simplify[-k[p, d] (
- \!\(\*OverscriptBox[\(d\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)) + o1];
- Print["s=", s, ", \!\(\*OverscriptBox[\(s\), \(_\)]\)=",
- \!\(\*OverscriptBox[\(s\), \(_\)]\)];
- Print["s1=", s1];
- Print["s2=", s2];
- Print["s1-s2=", Simplify[s1 - s2]];
- Print["。。。。。。。。。。。。。。。。。。。。。。。。。。"];
- Simplify[{1, o1,
- \!\(\*OverscriptBox[\(o1\), \(_\)]\), , d,
- \!\(\*OverscriptBox[\(\(d\)\(\ \)\), \(_\)]\), e,
- \!\(\*OverscriptBox[\(\(e\)\(\ \)\), \(_\)]\), , x,
- \!\(\*OverscriptBox[\(x\), \(_\)]\)}]
- Simplify[{2, p,
- \!\(\*OverscriptBox[\(p\), \(_\)]\), , q,
- \!\(\*OverscriptBox[\(\(q\)\(\ \)\), \(_\)]\), , s,
- \!\(\*OverscriptBox[\(s\), \(_\)]\)}]
- Simplify[{3, k[s, e], -((s - o1)/(
- \!\(\*OverscriptBox[\(e\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\))), , k[s, d],
- k[p, d], -((s - o1)/(
- \!\(\*OverscriptBox[\(d\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\))), -((d - o1)/(
- \!\(\*OverscriptBox[\(s\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\))), , -((s - o1)/(
- \!\(\*OverscriptBox[\(d\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\))) + (d - o1)/(
- \!\(\*OverscriptBox[\(s\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\))}](*验证S在圆O1上*)
- Simplify[{4, (s - o1) (
- \!\(\*OverscriptBox[\(s\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)), , (x - o1) (
- \!\(\*OverscriptBox[\(x\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)), (o1 - a) (
- \!\(\*OverscriptBox[\(o1\), \(_\)]\) -
- \!\(\*OverscriptBox[\(a\), \(_\)]\)), , (e - o1) (
- \!\(\*OverscriptBox[\(e\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)), (d - o1) (
- \!\(\*OverscriptBox[\(d\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)), x
- \!\(\*OverscriptBox[\(x\), \(_\)]\)}]
- Simplify[{5, (s - o1) (
- \!\(\*OverscriptBox[\(s\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)) - (x - o1) (
- \!\(\*OverscriptBox[\(x\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\))}]
- Simplify[{6, k[a, d], k[a, e], -((a - o1)/(
- \!\(\*OverscriptBox[\(d\), \(_\)]\) -
- \!\(\*OverscriptBox[\(o1\), \(_\)]\)))}]
- Simplify[{7, s1, s2, , s1 - s2}](*验证S在圆O1上*)
复制代码
部分运行结果如下:
|
|