找回密码
 欢迎注册
楼主: 数学星空

[转载] 折纸重叠面积问题

[复制链接]
发表于 2014-1-7 21:28:32 来自手机 | 显示全部楼层
由于sin(2h)和cos(2h)分母相同,sin(2h-B)也可以表示为s,t的二次分式 sin(2h)cos(B)-cos(2h)sin(B)
$$\sin(2h-B)=\frac{u_1(\frac{t}{s})cos(B)-u_2(\frac{t}{s})sin(B)}{v(\frac{t}{s})}=\frac{u_3(\frac{t}{s})}{v(\frac{t}{s})}$$
其中$u_3,v$都是二次函数
同样可以设角AFE为g并且$$\sin(2g-C)=\frac{w_3(\frac{t}{s})}{z(\frac{t}{s})}$$
需要注意,这里如果仅仅根据上一个表达式B和C对称变换过来,得出的是关于$\frac{s}{t}$的表达式,还需要再处理一下才行
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2014-1-7 21:34:17 来自手机 | 显示全部楼层
然后在三角形EBB1内用正弦定理得出sin(2h-B)/(1-s)=sin(B)/(s-u)得出u可以表示为s,t的分式,分子3次分母两次。同样v也一样。最后s*t-u*v是关于s,t的分式,分子6次,分母4次。
$$u=s-(1-s)\frac{sin(B)v(\frac{t}{s})}{u_3(\frac{t}{s})}$$
$$v=t-(1-t)\frac{sin(C)z(\frac{t}{s})}{w_3(\frac{t}{s})}$$
$$k=s*t-u*v=(1-s)s\frac{t}{s}\frac{sin(B)v(\frac{t}{s})}{u_3(\frac{t}{s})}+s(1-s\frac{t}{s})\frac{sin(C)z(\frac{t}{s})}{w_3(\frac{t}{s})}-(1-s)(1-s\frac{t}{s})\frac{sin(B)sin(C)v(\frac{t}{s})z(\frac{t}{s})}{u_3(\frac{t}{s})w_3(\frac{t}{s})}$$
$$k=\frac{r_1(\frac{t}{s})s^2+r_2(\frac{t}{s})s+r_3(\frac{t}{s})}{u_3(\frac{t}{s})w_3(\frac{t}{s})}$$
其中$r_1,r_2,r_3$是不超过5次的多项式
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2014-1-8 06:39:54 | 显示全部楼层
另外我们可以做变量替换将(s,t)替换为(s,t/s),由此面积比变成s的二次方程,可以求出s的极值情况带入变成t/s的分式。然后再求导应该是一个18次方程
将$$s=-\frac{r_2(\frac{t}{s})}{2r_1(\frac{t}{s})}$$代入k的表达式得出
$$k=\frac{4r_3(\frac{t}{s})r_1(\frac{t}{s})-r_2^2(\frac{t}{s})}{4r_1(\frac{t}{s})w_3(\frac{t}{s})u_3(\frac{t}{s})}$$
分子10次,分母9次,所以导数等于是变量$\frac{t}{s}$18次方程,求其所有实数根,然后求对应的s,t,u,v要求$0<=u<=s<=1,0<=v<=t<=1$才符合条件
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2014-1-10 17:24:31 | 显示全部楼层
今天试着写了个Pari/gp的代码
  1. min_val()={1e-5;}
  2. polremove_zero(p)={
  3.     local(q,d);
  4.     q=0;d=poldegree(p);
  5.     q=polcoeff(p,0);
  6.     for(u=1,d,
  7.        if(abs(polcoeff(p,u))>min_val(),
  8.            q=q+polcoeff(p,u)*r^u)
  9.     );
  10.     q
  11. }
  12. find_best_3(a,b)={
  13.     local(c,best);
  14.     local(ca,sa,cb,sb,cc,sc);
  15.     local(w1,w2,v,w3);
  16.     local(u1,u2,z,u3);
  17.     local(a1,a2,a3);
  18.     local(m1,m2,m3,pr,rr,ts,tt,tr,smu,tmv);
  19.     c=180-a-b;best=0.0;
  20.     print("A="a";B="b";C="c);
  21.     a=a*Pi/180;b=b*Pi/180;c=c*Pi/180;
  22.     ca=cos(a);sa=sin(a);cb=cos(b);sb=sin(b);cc=cos(c);sc=sin(c);
  23.     w1=2*sb*sa*(sc*r-sb*ca);w2=(sc*r-sb*ca)^2-(sb*sa)^2;
  24.     v=(sc*r-sb*ca)^2+(sb*sa)^2;
  25.     w3=w1*cb-w2*sb;
  26.     u1=2*sc*sa*r*(sb-sc*ca*r);u2=(sb-sc*ca*r)^2-(sc*sa*r)^2;
  27.     z=(sc*sa*r)^2+(sb-sc*ca*r)^2;
  28.     u3=u1*cc-u2*sc;
  29.     a1=((-v*sb-w3)*z*sc-v*sb*u3)*r;
  30.     a2=((v*sb+w3)*z*sc*r+(v*sb*z*sc+v*sb*u3));
  31.     a3=-v*sb*z*sc;
  32.     m1=(4*a1*a3-a2^2);m2=(4*a1*w3*u3);
  33.     m3=deriv(m1,r)*m2-m1*deriv(m2,r);
  34.     m3=polremove_zero(m3);
  35.     if(poldegree(m3)>0,
  36.     pr=polroots(m3);
  37.     for(u=1,length(pr),
  38.          if(abs(imag(pr[u]))<min_val(),
  39.              rr=real(pr[u]);
  40.              if(subst(a1,r,rr)!=0,
  41.                tt=subst(a2/(-2*a1),r,rr);
  42.                ts=tt*rr;
  43.                tr=subst(m1/m2,r,rr);
  44.                smu=subst(sb*v/w3*(1-ts),r,rr);
  45.                tmv=subst(sc*z/u3*(1-tt),r,rr);
  46.                if(0<=tmv&&tmv<=tt&&tt<=1&&0<=smu&&smu<=ts&&ts<=1&&sb*sa/(sc*rr-sb*ca)>tan(b/2)&&sc*sa*rr/(sb-sc*ca*rr)>tan(c/2),print("t="tt";s="ts";u="ts-smu";v="tt-tmv";r="tr);if(tr>best,best=tr))
  47.              )
  48.          )
  49.     )
  50.     );best
  51. }

  52. find_best_bisector(A,B)=
  53. {
  54.     local(C,tr,best);
  55.     C=180-A-B;
  56.     A=A*Pi/180;B=B*Pi/180;C=C*Pi/180;
  57.     if(A<B,tr=A;A=B;B=tr);
  58.     if(A<C,tr=A;A=C;C=tr);
  59.     if(B<C,tr=B;B=C;C=tr);
  60.     tr=sin(B)/(sin(A)+sin(B));best=sin(C)/(sin(B)+sin(C));
  61.     if(tr>best,best=tr);
  62.     best
  63. }

  64. find_best_perp(A,B)=
  65. {
  66.     local(C,tr,best);
  67.     C=180-A-B;
  68.     A=A*Pi/180;B=B*Pi/180;C=C*Pi/180;
  69.     if(A<B,tr=A;A=B;B=tr);
  70.     if(A<C,tr=A;A=C;C=tr);
  71.     if(B<C,tr=B;B=C;C=tr);
  72.     tr=(tan(A)+tan(B))/(3*tan(A)+tan(B));
  73.     best=(tan(B)+tan(C))/(3*tan(B)+tan(C));
  74.     if(tr>best,best=tr);
  75.     best
  76. }

  77. find_best_outside_triangle(A,B)=
  78. {
  79.     local(C,best);
  80.     C=180-A-B;best=0;
  81.     A=A*Pi/180;B=B*Pi/180;C=C*Pi/180;
  82.     if(A<B,tr=A;A=B;B=tr);
  83.     if(A<C,tr=A;A=C;C=tr);
  84.     if(B<C,tr=B;B=C;C=tr);
  85.     if(C<Pi/4&&A<Pi/2,
  86.        best = 1/(1+1/tan(A)+1/tan(C))
  87.     );
  88.     best
  89. }

  90. find_best_by_angle(A,B)=
  91. {
  92.     local(C,tr,best);
  93.     C=180-A-B;
  94.     best=find_best_bisector(A,B);
  95.     print("best bisector result "best);
  96.     tr=find_best_perp(A,B);
  97.     print("best perpandicular result "tr);
  98.     if(tr>best,best=tr);
  99.     tr=find_best_outside_triangle(A,B);
  100.     if(tr>0,print("best outside triangle result "tr));
  101.     if(tr>best,best=tr);
  102.     tr=find_best_3(A,B);
  103.     if(tr>best,best=tr);
  104.     tr=find_best_3(B,C);
  105.     if(tr>best,best=tr);
  106.     tr=find_best_3(C,A);
  107.     if(tr>best,best=tr);
  108.     best
  109. }

  110. find_best_by_edge(a,b,c)=
  111. {
  112.     local(A,B,C,tr,best);
  113.     A=acos((b^2+c^2-a^2)/(2*b*c));
  114.     B=acos((c^2+a^2-b^2)/(2*c*a));
  115.     find_best_by_angle(A,B)
  116. }
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2014-1-10 17:27:02 | 显示全部楼层
(17:25) gp > find_best_by_edge(2,3,4)
best bisector result 0.3834009244559788420271162548
best perpandicular result 0.4477824475313358639687688324
A=0.5053605102841573069713148740;B=0.8127555613686606587743493807;C=178.68188392
83471820342543358
A=0.8127555613686606587743493807;B=178.6818839283471820342543358;C=0.50536051028
41573069713148740
A=178.6818839283471820342543358;B=0.5053605102841573069713148740;C=0.81275556136
86606587743493807
%26 = 0.4477824475313358639687688324
(17:25) gp > find_best_by_angle(30,40)
best bisector result 0.4375266197864600483287007481
best perpandicular result 0.4577093640951743284656298795
A=30;B=40;C=110
A=40;B=110;C=30
t=0.5013105936492297705211802976;s=0.7552891527877354175137264341;u=0.4986894063
507702294788197024;v=0.2447108472122645824862735659;r=0.256599746436965188034906
7290
t=0.4375266197864600483286904870;s=0.9999999999999999999998478268;u=0.562473268;
v=1.521729978 E-22;r=0.4374756644
t=0.4375266197864600483286904870;s=0.9999999999999999999998478268;u=0.562473268;
v=1.521729978 E-22;r=0.4374756644
A=110;B=30;C=40
t=0.9999999999999930089980638760;s=0.3472963553338663283073523439;u=6.9910019361
24001213 E-15;v=0.6527036446661331842;r=0.3472963553338593905
t=0.7868980797780607548943594088;s=0.5386550525145096753223579870;u=0.2131019202
219392451056405911;v=0.4613449474854903246776420129;r=0.325553132292570430216717
3959
t=0.4061899778012661188465732818;s=0.9999999999999939671424883130;u=0.5938100221
987341701;v=6.032857511687044160 E-15;r=0.4061899778012589536403229241
%27 = 0.4577093640951743284656298795
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2014-1-10 17:29:27 | 显示全部楼层
比较有趣的是我试验了多个结果,最终结果总是在对角线或和一边垂直的折线上取到。
而多余最复杂的那个极值问题,求解极值点好像总会取到t=1或s=1这两种情况,也就是包含了对角线情况
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2014-1-10 23:24:04 | 显示全部楼层
根据楼上mathe的计算方案:
可以得到
$s*(a^2*s*t-b^2*s*t+b^2*t^2+c^2*s^2-c^2*s*t)*(a^2*s^2+a^2*s*t+a^2*t^2-b^2*s^2+b^2*s*t+c^2*s*t-c^2*t^2-a^2*s-a^2*t+b^2*s-b^2*t-c^2*s+c^2*t)=0$

$(a*t-c*s+c*t)*(a*t+c*s-c*t)*(a*s-b*s+b*t)*(a*s+b*s-b*t)*(a^2*s*t-b^2*s*t+b^2*t^2+c^2*s^2-c^2*s*t)*(a^2*k*s^2+a^2*k*s*t+a^2*k*t^2-b^2*k*s^2+b^2*k*s*t+c^2*k*s*t-c^2*k*t^2-a^2*s*t+b^2*s*t-b^2*t^2-c^2*s^2+c^2*s*t)=0$
进而我们可以得到以下几种情况
(1)$ s = 1, t = c/(a+c) $
(2)$s = 1, t = c/(c-a)$
(3)$s = b/(b-a), t = 1$
(4)$s = b/(a+b), t = 1$
(5)$(a^2-b^2)*k^2+(-a^2*t+3*b^2*t+c^2*t+a^2-b^2-c^2)*k+a^2*t^2-2*b^2*t^2-2*c^2*t^2-a^2*t+b^2*t+3*c^2*t-c^2=0$
前面1~4就是mathe数值计算的结果
对于(5)表达了什么信息呢?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2014-1-11 08:07:34 来自手机 | 显示全部楼层
计算结果很棒,证明了极值情况已经包含了过顶点情况的极值。上面方程就是一阶偏导为零的解了?能否计算出对应情况下的二阶偏导数呢?如果可以证明那时总是行列式值小于零,那么必然不是极值点,就可以淘汰(5)了
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2014-1-11 09:41:03 | 显示全部楼层
对于(5)
A     $(a^2-b^2)*k^2+(-a^2*t+3*b^2*t+c^2*t+a^2-b^2-c^2)*k+a^2*t^2-2*b^2*t^2-2*c^2*t^2-a^2*t+b^2*t+3*c^2*t-c^2=0$

B     A的判别式$:(-3*a^4+6*a^2*b^2+6*a^2*c^2+b^4-2*b^2*c^2+c^4)*t^2+(2*a^4-8*a^2*c^2-2*b^4+4*b^2*c^2-2*c^4)*t+a^4-2*a^2*b^2+2*a^2*c^2+b^4-2*b^2*c^2+c^4$

C     B的判别式:$16*a^2*(a-b)*(b+a)*(b+a-c)*(b+a+c)*(-b+a+c)*(-b+a-c)$

另外,我们还有
D    $u = (a^2*s^2*t+a^2*s*t^2-b^2*s^2*t+b^2*s*t^2+c^2*s^2*t-c^2*s*t^2-a^2*s*t+b^2*s*t-b^2*t^2-c^2*s^2+c^2*s*t)/(a^2*t^2-c^2*s^2+2*c^2*s*t-c^2*t^2) $

E    $v =(a^2*s^2*t+a^2*s*t^2-b^2*s^2*t+b^2*s*t^2+c^2*s^2*t-c^2*s*t^2-a^2*s*t+b^2*s*t-b^2*t^2-c^2*s^2+c^2*s*t)/(a^2*s^2-b^2*s^2+2*b^2*s*t-b^2*t^2)$

若先假定当折痕线垂直于a边时(即22#,第2种情形),$k=a^2/(2*a^2+b^2-c^2) $代入A 可以得到下面两式

F    $4*a^6*s^2-4*a^4*b^2*s^2-12*a^4*c^2*s^2-7*a^2*b^4*s^2-2*a^2*b^2*c^2*s^2+9*a^2*c^4*s^2-2*b^6*s^2+2*b^4*c^2*s^2+2*b^2*c^4*s^2-2*c^6*s^2-6*a^6*s+9*a^4*b^2*s+15*a^4*c^2*s+$
      $12*a^2*b^4*s-4*a^2*b^2*c^2*s-8*a^2*c^4*s+3*b^6*s-5*b^4*c^2*s+b^2*c^4*s+c^6*s+3*a^6-5*a^4*b^2-4*a^4*c^2-5*a^2*b^4+4*a^2*b^2*c^2+a^2*c^4-b^6+2*b^4*c^2-b^2*c^4=0$

G    $4*a^6*t^2-4*a^4*b^2*t^2-12*a^4*c^2*t^2-7*a^2*b^4*t^2-2*a^2*b^2*c^2*t^2+9*a^2*c^4*t^2-2*b^6*t^2+2*b^4*c^2*t^2+2*b^2*c^4*t^2-2*c^6*t^2-6*a^6*t+5*a^4*b^2*t+19*a^4*c^2*t+$   
      $6*a^2*b^4*t+8*a^2*b^2*c^2*t-14*a^2*c^4*t+b^6*t+b^4*c^2*t-5*b^2*c^4*t+3*c^6*t+3*a^6-2*a^4*b^2-7*a^4*c^2-a^2*b^4-4*a^2*b^2*c^2+5*a^2*c^4-b^4*c^2+2*b^2*c^4-c^6=0$

通过部份数值计算:
例:
$a=4,b=3,c=2 $代入D,E,F,G分别算得 $s = 0.4216718296, t = 0.1378880458, u = 2.481323469, v = -0.5808983322$
$a=2,b=3,c=4 $代入D,E,F,G分别算得 $s = 1.611231238, t = 1.154709498, u = 6.035072856, v = 1.417754104$
$a=5,b=4,c=3 $代入D,E,F,G分别算得 $s =0 .4518444289, t = 0.2946514465, u = -0.4560498243, v = -0.1886773365$
$a=3,b=4,c=5 $代入D,E,F,G分别算得 $s = 0.6488765584, t = 0.6488765584, u = 0.2977531155, v =0.2977531157$
$a=8,b=7,c=6$ 代入D,E,F,G分别算得 $s = 0.4767134960, t = 0.4097390546, u = -0.1317420972, v = -0.9733320449e-1$
$a=6,b=7,c=8 $代入D,E,F,G分别算得 $s =0 .5378807862, t =0 .5669666588, u =0 .1051599423, v = 0.1167585144$
显然第一条件为$a<=b$,并且不是总存在有意义的解

-----------------------------------------
根据即22#,第2种情形,存在的条件为$a/b>sqrt(2),b/c>sqrt(2),$显然不满足$a<=b$,
即(5)不可能是第2种情形,那如何进一步计算此情形?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2014-1-11 10:41:25 | 显示全部楼层
好强大的因子分解。星空的第一个关于s,t的等式是不是就我前面关于s的二次方程取最大值的条件?而第二条t,k的方程是利用这条件消去s的结果?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-5-5 03:47 , Processed in 0.050794 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表