数学题的演示与解答(网络画板、Mathematica)
1、画出基本图形。
由于抛物线方程是已知的,那么,A、B、C、D的位置也就确定了。
由于第一个小问题比较简单,这里不做讨论。
本段落专门考虑第二个小问题,我把第二个小问题分拆开来介绍。

2、先求出2PF+EQ最大的时候,P的位置。
设E的坐标是{u,0},那么F的坐标就是{u+1,0},
那么,P和Q的坐标也可以用u来表示:
Y=Sqrt[3]*x^2/6-2*Sqrt[3]*x/3-2*Sqrt[3] ;
e={u,0};
f={u+1,0};
Q={u,(-6 + u)/Sqrt[3]};
P={u+1,((-5 + u) (3 + u))/(2 Sqrt[3])};
那么,2PF+EQ=(6 - u + (3 + u) Abs[-5 + u])/Sqrt[3]
当u=1/2的时候,有最大值。

3、P的位置确定了之后,再来考虑PH+HM-MB/sqrt(2)的最小值。
先假设H的位置是固定的,那么,PH就是定值;
思考HM-MB/sqrt(2)取最小值的时候,H和M的关系:
作两条直线y=±(x+2),那么,M到这两条直线的距离MN,就是MB/sqrt(2);
当M位于B右侧的时候,H和M位于y=-x-2两侧,设M、H到直线y=-x-2的垂足为N、G;
作圆M(N);
观察发现,当HM-MN最小的时候,N和G重合;
也就是说,当MH垂直于直线y=-x-2的时候,HM-MB/sqrt(2)最小,等于HG。

4、当M位于B右侧的时候,H和M位于y=-x-2同侧,设M、H到直线y=-x-2的垂足为N、G;
作圆M(N),HM>MN的情况就不需要考虑了,因为我们要求的是最小值;
观察发现,当HM-MN最小的时候,N和G重合;
亦即,当MH垂直于直线y=-x-2的时候,HM-MB/sqrt(2)最小,等于-HG;
这个时候,PH-HG的最小值是PK,其中K是直线y=-x-2与y轴的交点。
这只是一个局部最小值。

5、当M位于B左侧的时候,设M、H到直线y=x+2的垂足为N'、G';
作圆M(N');
观察发现,当HM-MN'最小的时候,N'和G'重合;
也就是说,当MH垂直于直线y=x+2的时候,HM-MB/sqrt(2)最小。

6、然后让H动起来:
设H到直线y=±(x+2)的距离是HG,下面只需要考虑PH+HG取最小值时H的位置。
观察动画,可以发现,当PH//直线y=-x-2的时候,PH+HG取得局部最小值。

7、取得局部最小值的时候:
当M位于B左侧的时候,G在直线y=x+2上面;
当M位于B右侧的时候,G在直线y=-x-2上面;
对比一下三个个局部最小值,可以发现,当M位于B右侧的时候,是全局最小值。
这样,H的位置就确定了,HG垂直于直线y=-x-2,PH+HG就是PH+HM-MB/sqrt(2)的最小值。

1、B和C按照向量n*BA平移,得到B'、C',而B'C'的中点位于x轴上,解方程:
Solve[(b + (a - c)*n)[[2]] + (c + (a - c)*n)[[2]] == 0, n]
答案是n=1/2,说明C'位于线段AC的中点。
注意,代码里面的a、b、c指的是A、B、C的坐标。


2、这样,就可以求出B'O'C'的顶点坐标:
b0 = b + (a - c)*1/2
c0 = c + (a - c)*1/2
o0 = o + (a - c)*1/2
其中,o是坐标原点。

3、假设旋转中心是T{u,v},
那么B'O'C'绕T逆时针旋转90°,得到的三个顶点的坐标是:
zheng = RotationTransform[90 \[Degree], {u, v}][#] & /@ {b0, c0, o0}
B'O'C'绕T顺时针旋转90°,得到的三个顶点的坐标是:
fan = RotationTransform[-90 \[Degree], {u, v}][#] & /@ {b0, c0, o0}

4、设抛物线的隐函数方程是:
k[{x_, y_}] := Sqrt[3]*x^2/6 - 2*Sqrt[3]*x/3 - 2*Sqrt[3] - y
三角形某两个顶点位于抛物线上:
bb = Subsets[(RotationTransform[90 \[Degree], {u, v}][#]) & /@ {c0,
b0, o0}, {2}];
Table[Solve[k[bb[[n, 1]]] == 0 && k[bb[[n, 2]]] == 0,
{u, v}] // Values // Flatten, {n, 1, 3, 1}] // Column
cc = Subsets[(RotationTransform[-90 \[Degree], {u, v}][#]) & /@ {c0,
b0, o0}, {2}];
Table[Solve[k[cc[[n, 1]]] == 0 && k[cc[[n, 2]]] == 0,
{u, v}] // Values // Flatten, {n, 1, 3, 1}] // Column
经过计算,满足要求的旋转中心一共有四个,它们的坐标如下。


5、在网络画板里面实现这个旋转的动画,每一种情形,恰好有两个点位于抛物线上。
