簡體   English   中英

如何通過多個方程在matlab函數中使用pinv()進行編碼?

[英]How to code to use pinv() in matlab function from multi equations?

我有以下等式。

f(x)= 3x ^ 3-4−x2 + 3x−7

f(x)= 2x ^ 3−3x ^ 2 + 2x−1

我想從AX = B,X = pinv(A)B獲得X。

然后我已經在MATLAB中進行了如下編碼。

A = [3 -4 3 -7; 2 -3 2 -1];

但是我不知道如何獲得B? 有人知道如何獲得B嗎?

我該怎么辦B?

pinv()用於求解線性方程組,例如具有以下形式的多個方程:ax + by + cz。

您似乎擁有的是幾個立方方程,即ax ^ 3 + bx ^ 2 + cx + d的形式。 假設您要為f(x)= 0求解每個值,我將使用roots()函數。 例如,對於您的第一個方程式:

f1 = [3 -4 3 -7]
f1_roots = roots(f1)

有關根文檔,請參見此處: http : //uk.mathworks.com/help/matlab/ref/roots.html

將您的兩個方程式視為聯立方程式實際上沒有任何意義,因為x的值沒有一個可以同時滿足兩個解。 如果您希望找到與兩個解都盡可能接近但不滿足任何一個方程的x值,則可以考慮使用最小二乘法,如bashfuloctopus https://math.stackexchange.com/questions/所述1392818 /如何使用左反轉至FX-3x格式方程/ 1392843?noredirect = 1#comment2835591_1392843

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM