日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Eigen求解数学问题(二)

發布時間:2025/3/15 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Eigen求解数学问题(二) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

有這樣的一個問題:

公司職工問題(特征值與特征向量的應用問題)
某公司為了技術更新,計劃對職工實行分批脫產輪訓.
已知該公司現有2000人正在脫產輪訓,而不脫產職工有10000人.
若每年從不脫產職工中抽調30%的人脫產輪訓,同時又有60%
脫產輪訓職工結業回到生產崗位.設職工總數不變.試通過矩陣
運算表示第n年職工狀況,并據此計算第n年不脫產職工與脫
產職工各多少人.

求解過程:


利用Eigen 求解:

1、在Qt 建立console控制臺工程,在.pro 文件中添加 路徑引用:`
INCLUDEPATH+=F:\QT\eigen3

2、在.app 文件中添加如下代碼:

#include <Eigen/Dense>
#include <Eigen/Eigenvalues>
#include <unsupported/Eigen/MatrixFunctions>

``
3、主要關鍵代碼

using namespace Eigen; using namespace std;/* 【例2】 公司職工問題(特征值與特征向量的應用問題) 某公司為了技術更新,計劃對職工實行分批脫產輪訓. 已知該公司現有2000人正在脫產輪訓,而不脫產職工有10000人. 若每年從不脫產職工中抽調30%的人脫產輪訓,同時又有60% 脫產輪訓職工結業回到生產崗位.設職工總數不變.試通過矩陣 運算表示第n年職工狀況,并據此計算第n年不脫產職工與脫 產職工各多少人. *//* 求解:xn表示第n年不脫產職工人數, yn表示第n年脫產職工人數,故:xn+1 = 0.7*xn + 0.6*ynyn+1 = 0.3*xn + 0.4*yn令matrix2d A;A<<0.7,0.6,0.3,0.4;xn =A^n *x0;*/int main(int argc, char *argv[]) {QCoreApplication a(argc, argv);Matrix2d A;A << 0.7,0.6,0.3,0.4;cout << "Here is the matrix A:\n" << A << endl;Vector2d B;B<<10000,2000;cout << "Here is the Vetor B:\n" << B << endl;cout << "Here is a 3x3 matrix, A:" << endl << A << endl << endl;EigenSolver<Matrix2d> ev(A);Matrix2d D = ev.pseudoEigenvalueMatrix();Matrix2d V = ev.pseudoEigenvectors();cout << "The pseudo-eigenvalue matrix D is:" << endl << D << endl;cout << "The pseudo-eigenvector matrix V is:" << endl << V << endl;cout << "Finally, V * D * V^(-1) = " << endl << V * D * V.inverse() << endl;Matrix2d tn;for(int i = 0;i<7;i++){tn = V * (D.pow(i)) * V.inverse();cout << "Finally, Ans = " << endl << tn * B<< endl;}return a.exec(); }

輸出

總結:

運用Eigen來求矩陣的特征值和特征向量,從而解決某一類的數學問題。

總結

以上是生活随笔為你收集整理的Eigen求解数学问题(二)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。