如何使得角度最大?
给定一条直线l,直线外同一侧有两点A、B
AB与直线l不垂直,
直线l上有一点P,如何使得∠APB最大?
最大的时候满足什么条件? 过AB的圆与直线相切的切点 本帖最后由 mathematica 于 2019-12-31 09:25 编辑
倪举鹏 发表于 2019-12-31 09:13
过AB的圆与直线相切的切点
Clear["Global`*"];
(*两个点,一个是(a,b),一个是(c,d),假设直线是x轴*)
a=1
b=2
c=3
d=4
(*计算出两条直线的斜率*)
y1=(d-0)/(c-x)
y2=(b-0)/(a-x)
(*计算出两条直线的夹角的斜率,可能是负数*)
k=(y1-y2)/(1+y1*y2)//FullSimplify
(*画出夹角(弧度制)*)
Plot],{x,-20,20}]
Clear["Global`*"];
(*两个点,一个是(a,b),一个是(c,d),假设直线是x轴*)
a=1
b=2
c=3
d=4
(*计算出两条直线的斜率*)
y1=(d-0)/(c-x)
y2=(b-0)/(a-x)
(*计算出两条直线的夹角的斜率,可能是负数*)
k=(y1-y2)/(1+y1*y2)//FullSimplify
(*画出夹角(弧度制)*)
Plot],{x,-20,20}]
根据画出的图形,可以知道这个图形有两个极值点,
右边的那个极值点的几何意义表示圆与直线相切,
那么左边的那个极值点有没有几何意义呢?
如果有,它的几何意义是什么?
对于
A(1,2),B(3,4)这两点
求出来两个数是
{{x -> -5}, {x -> 3}}
右边表示相切,左边表示什么呢?
mathematica 发表于 2019-12-31 09:21
Clear["Global`*"];
(*两个点,一个是(a,b),一个是(c,d),假设直线是x轴*)
a=1
Clear["Global`*"];
a=1
b=2
c=3
d=4
f=(x-x1)^2+(y-y1)^2-y1^2
Solve==0&&f==0,{x1,y1}]//FullSimplify
Clear["Global`*"];
a=1
b=2
c=3
d=4
f=(x-x1)^2+(y-y1)^2-y1^2
Solve==0&&f==0,{x1,y1}]//FullSimplify
得到结果
{{x1 -> -5, y1 -> 10}, {x1 -> 3, y1 -> 2}}
好像都是相切的点,但是相切的点为什么是两个呢?
补充内容 (2020-1-9 09:30):
不给abcd赋值,那么求解结果是\[\left\{\left\{\text{x1}\to -\frac{\sqrt{b d \left((a-c)^2+(b-d)^2\right)}+a d-b c}{b-d},\text{y1}\to \frac{b \left((a-c)^2-d^2\right)+2 a \sqrt{b d \left((a-c)^2+(b-d)... Clear["Global`*"];
(*两个点,一个是(a,b),一个是(c,d),假设直线是x轴*)
(*计算出两条直线的斜率*)
y1=(d-0)/(c-x)
y2=(b-0)/(a-x)
(*计算出两条直线的夹角的斜率,可能是负数*)
k=(y1-y2)/(1+y1*y2)//FullSimplify
(*求导数,求驻点*)
kx=D//FullSimplify
out=Solve//FullSimplify
夹角的正切值
\[\frac{d (a-x)+b (x-c)}{-x (a+c)+a c+b d+x^2}\]
正切值的导数
\[\frac{d (a-x)^2+b^2 d-b \left((c-x)^2+d^2\right)}{\left(-x (a+c)+a c+b d+x^2\right)^2}\]
极值点
\[\left\{\left\{x\to -\frac{\sqrt{b d \left((a-c)^2+(b-d)^2\right)}+a d-b c}{b-d}\right\},\left\{x\to \frac{\sqrt{b d \left((a-c)^2+(b-d)^2\right)}-a d+b c}{b-d}\right\}\right\}\] mathematica 发表于 2020-1-2 09:48
夹角的正切值
\[\frac{d (a-x)+b (x-c)}{-x (a+c)+a c+b d+x^2}\]
本问题很有意思,看似不难,但A、B、P点分布情况情况较多,要分析清楚并得出正确简明结果是不容易的。
假定直线l为x轴,A、B两点的坐标分别为(a,b)、(c,d),按条件,a、b、c、d只要满足b*d>0(在一侧)及|a-c|+|b-d|>0(两个点)就可以了。AB与x轴垂直时不影响分析讨论(故可不加这条件)。
你的解答思路正确,最大∠APB的P点位置确在经过A、B两点并与x轴相切的园的切点中。但有两点没有说明清楚(或计算有误):
1. 夹角∠APB计算
假定y1、y2分别是夹角两直线的斜率,则夹角∠APB不一定等于|ArcTan(y1)-ArcTan(y2)|,如点P的x坐标在A、B两点的x坐标之间,则∠APB=π-ArcTan(|y1|)-ArcTan(|y2|)(弧度)。即使∠APB=ArcTan(y1)-ArcTan(y2)成立,∠APB=ArcTan((y1-y2)/(1+y1*y2))也不一定成立(ArcTan(y1)-ArcTan(y2)详细计算公式可参见数学手册)
仔细分析后,夹角∠APB计算公式为:
当y1*y2在开区间(-1,0)中时,∠APB=π-ArcTan(|(y1-y2)/(1+y1*y2)|)(弧度)。
当y1*y2不在开区间(-1,0)中时,∠APB= ArcTan(|(y1-y2)/(1+y1*y2)|)(弧度)。
注:当y1*y2=-1时∠APB=π。当y1=∞或y2=∞(即斜率计算时分母为0)时,∠APB可通过附近点计算值求极限得到。
下图显示:当a=1、b=2、c=10、d=4时,如果夹角都按∠APB= ArcTan(|(y1-y2)/(1+y1*y2)|)计算,P点x坐标与夹角∠APB(角度)之间的关系
显然,对这种情况,按∠APB= ArcTan(|(y1-y2)/(1+y1*y2)|)计算的结果是不对的(最大值不会大于90°),两个最大值都不是最大夹角。实际上对这种情况,最大夹角约等于114.8°(P点x坐标约等于5.04)。
2. 最大夹角时,P点x坐标xj的计算
假设x1、x2是你计算出的两个极值点的x坐标(第一个(左边)为x1,第二个(右边)为x2),x3=(a+c)/2
xj不一定等于x1或x2。经仔细分析,xj计算方法如下:
若b=d,正切值的导数为一元一次方程,解得xj=x3。(说明这种情况只有1个切点)
若b≠d,正切值的导数为一元二次方程 (说明这种情况有2个切点) 则
当a=c时,xj=x1或xj=x2(说明这种情况有2个最大值点)
当a≠c时,b/(a-c)<0时xj=x1; b/(a-c)>0时xj=x2。
有了xj,按上述计算夹角∠APB方法,就可以得出最大夹角了。
以上是我分析计算结果,不知是否还有更简明的正确结果。
sheng_jianguo 发表于 2020-1-8 16:52
本问题很有意思,看似不难,但A、B、P点分布情况情况较多,要分析清楚并得出正确简明结果是不容易的。
...
tan∠APB的绝对值,必然等于(y1-y2)/(1+y1*y2)的绝对值呀
求∠APB的极值,也就是求tan∠APB(排除90°的情况),
也就是求(y1-y2)/(1+y1*y2)的极值呀,
如果反求角度的话,是有问题的,但是求极值的话,我感觉没问题。
不过你可以用余弦函数来求解角度,这肯定没问题
对于(1,2)(10,4)
求解结果如下:
Clear["Global`*"];
(*两个点,一个是(a,b),一个是(c,d),假设直线是x轴*)
a=1
b=2
c=10
d=4
(*求出两个矢量*)
v1={a-x,b-0}
v2={c-x,d-0}
(*计算出两个矢量的夹角的余弦值*)
alpha=Dot/(Norm*Norm)//FullSimplify
Plot*180/Pi,{x,-20,20},PlotRange->All]
sheng_jianguo 发表于 2020-1-8 16:52
本问题很有意思,看似不难,但A、B、P点分布情况情况较多,要分析清楚并得出正确简明结果是不容易的。
...
我觉得我在五楼的回答,已经把你的所有的讨论的情况给包含了,
就是两个极值点,但是有一个问题,
当a=c的时候,似乎有三个极值点,
当x=a=c的时候有一个最小值,零度,这个是最小极值。 本帖最后由 mathematica 于 2020-1-9 09:23 编辑
sheng_jianguo 发表于 2020-1-8 16:52
本问题很有意思,看似不难,但A、B、P点分布情况情况较多,要分析清楚并得出正确简明结果是不容易的。
...
现在来阐明一下五楼的表达式的几何意义!
\[\left\{\left\{x_1\to -\frac{\sqrt{b d \left((a-c)^2+(b-d)^2\right)}+a d-b c}{b-d}\right\},\left\{x_2\to \frac{\sqrt{b d \left((a-c)^2+(b-d)^2\right)}-a d+b c}{b-d}\right\}\right\}\]
假设这两点是P1 P2
假设b不等于d,那么AB两点必然与直线有交点,假设为M,则M点的坐标是$(\frac{b c-a d}{b-d},0)$
很显然M是P1P2的中点,
还有表达式有明显的几何意义,
$\frac{\sqrt{(a-c)^2+(b-d)^2}}{b-d}$这个表示∠AMP的正弦的倒数,
由切割线定理可知道
MP1^2=MP2^2=AM*BM,
$\frac{\sqrt{b d \left((a-c)^2+(b-d)^2\right)}}{b-d}$这个表达式的绝对值,就是求MP1=MP2
只要AB与直线有交点,那么就有三个极值点,分别是P1 M P2,其中M是平凡的极值点,对应角度等于零,
如果b=d,那么圆心在AB的中垂线上,只有一个极值点。
mathematica 发表于 2019-12-31 10:01
Clear["Global`*"];
a=1
b=2
不给五楼的abcd赋值,那么求解结果是
\[\left\{\left\{\text{x1}\to -\frac{\sqrt{b d \left((a-c)^2+(b-d)^2\right)}+a d-b c}{b-d},\text{y1}\to \frac{b \left((a-c)^2-d^2\right)+2 a \sqrt{b d \left((a-c)^2+(b-d)^2\right)}-2 c \sqrt{b d \left((a-c)^2+(b-d)^2\right)}+d (a-c)^2+b^3-b^2 d+d^3}{2 (b-d)^2}\right\},\left\{\text{x1}\to \frac{\sqrt{b d \left((a-c)^2+(b-d)^2\right)}-a d+b c}{b-d},\text{y1}\to \frac{b \left((a-c)^2-d^2\right)-2 a \sqrt{b d \left((a-c)^2+(b-d)^2\right)}+2 c \sqrt{b d \left((a-c)^2+(b-d)^2\right)}+d (a-c)^2+b^3-b^2 d+d^3}{2 (b-d)^2}\right\}\right\}\]