所示的抛物-python读取mat文件并转为csv文件的实例
对这个问题,以另外一种更直观的方式来理解,就是函数( , )f s t是如图4.8所示的抛物面,若极值点在区域1中,那么最小值点一定落在1s t 的平面上,平面1s t 与抛物面相交的横截面是一条抛物线,相当于把1s t 代入函数( , )f s t中,得到抛物线的方程式(4.14),接下来的分析与上面介绍的一样。区域3和区域5的处理方法与区域1类似,这里不再赘述。如果(s , ) c c t在区域2内,则函数( , )f s t与三角形第一个接触的阶层曲线可能边0s 或者在1s t 上。 / '( , ) s f ds f s t 和/ '( , ) t f dt f s t 分别表示二次函数( , )f s t在s和t方向上的偏导数,如果 (d , ) '( , ), '( , ) 0x y s td f s t ,则函数( , )f s t在( , )s t处,沿着( , )x yd d方向上是递增的,如果 (d , ) '( , ), '( , ) 0x y s td f s t ,则函数( , )f s t在位置( , )s t ,沿着( , )x yd d方向上是递减的。由于极值点落在区域2上,第一个与长方形相切的阶层曲线,只能在0s 或者1s t 上,所以函数( , )f s t在点(0,1)处,方向是(1, 1)和方向(0, 1)上的偏导数不可能都是负的,即 (1, 1) '(0,1), '(0,1) '(1,1)s t s tf f f f 和 (0, 1) '(0,1), '(0,1) '(1,1)s t tf f f 两个值不可能都是负的。若'(1,1) 0 s t f f ,则最小值出现在1s t 上;否则,最小值出现在0s 上。在确定了最小值出现的直线,就可以把该直线方程,代入函数( , )f s t中,消去一元,再对一维的一元二次方程式进行分析,该方程式的形状是一个抛物线。例如,确定了最小值出现在直线0s 上,代入函数( , )f s t ,解得2(0, ) ct 2f t et f ,该函数的极值点是ˆ /t e c ,若ˆ 0t , (0,0)f取得最小值;若ˆ 1t , (0,1)f取得最小值;若ˆ0 1t , ˆ(0, )f t取得最小值。区域4和区域6的处理方法与区域2类似,这里不再赘述。算法伪码如下所示:在三维空间上,计算点P到三角形0 1 2 V VV的距离,其中,三角形所在的平面是 , ( , , ), {0,1,2} i i V x y z i 。 1. 0 0 0 1 1 1 0 1, , , ( ) ( )a e e b e e c e e d e B P e e B P f B P ; 2. , , *s be cd t bd ae det ac b b ; 3. if s t det , then 4. if 0s , then 5. if 0t , then 6. //区域4 7. if 0d , then 8. 0t ; 9. if d a , then 10. 1s ; 11. else 12. /s d a ; 13. end if; 14. else 15. 0s ; 16. if 0e , then 17. 0t ; 18. else if e c , then 19. 1t ; 20. else 21. /t e c 22. end if; 23. end if ;
9.75MB
文件大小:
评论区