計算拋物線方程

來源:互聯網
上載者:User

http://community.csdn.net/Expert/topic/3756/3756475.xml?temp=.3623011
已知拋物線上的2點的座標(x1, y1), (x2, y2)(且2點分別在拋物線的頂點的兩測),以及其頂點的縱座標k,且拋物線開口朝上,即a>0。

求出拋物線的一般式:y = a*X^2 + b*x + c 中的 a,b,c 的值,以及頂點的橫座標h。

這個問題可以這樣解決
假定方程的形式為
    y = a(x-b)^2 + k
這樣就保證最小點在k, x=b的時候數值最小
   y1-k = a ( x1-b)^2
   y2-k = a ( x2-b}^2
根據樓主的假設
顯然 y1和y2都是大於k的,否則就不可能有答案
     這就意味著 sqrt ((y1-k)/(y2-k)) 必然是有效資料

開根號後做除法,得到兩個方程
  sqrt((y1-k)/(y2-k)) = x1-b / x2-b
  sqrt((y1-k)/(y2-k)) = -(x1-b / x2-b)
只有後者才是有效,因為正確答案b是位於x1和x2之間的
於是可以求解b了, 然後帶回就求解出來a
然後 把 y = a(x-b)^2 + k
展開成為 y = Ax^2 + Bx + C
的模式,從而獲得了A,B,C的數值了

完整的計算就是

m = sqrt( (y1-k) / (y2-k) )
b = (x1+x2*m)/(m+1)
a = (y1-k) /((x1-b)*(x1-b))

A = a;
B = 2*a*b
C = k+b*b
頂點座標(b,k)
拋物線方程 y = A*x^2 + B*x + C

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.