我正在將matlab代碼轉換爲C++代碼,並嘗試在Lapack,Blas甚至Atlas中找到一個函數,它在matlab中的Diag(k)函數中執行相同的工作?有什麼建議麼 ?在C++中,Diag(k)的替代方法是什麼?
0
A
回答
0
static void create_diagonal_matrix(T* matrix,T* v,int size)
{
for(int i=0;i<size;i++)
{
for(int32_t j=0;j<size;j++)
{
if(i==j)
matrix[j*size+i]=v[i];
else
matrix[j*size+i]=0;
}
}
}
0
GSL, the Gnu Scientific Library有一個功能gsl_matrix_diagonal (gsl_matrix * m)
。這在矩陣中創建了一個「矢量視圖」,它或多或少是一個與矩陣對角線混疊的gsl矢量。不知道,如果你愛GSL,但它也包括BLAS支持。我認爲這是一個非常好的圖書館。
相關問題
- 1. C#中的替代方法是什麼#
- 2. 替代在MATLAB DIAG(X'* C * X)
- 3. Python中的替代方法是什麼?
- 4. 在C#中,HttpClient.getStringAsync()方法的同步替代是什麼?
- 5. 什麼是替代在C + +
- 6. 什麼是C#中的多繼承的替代方法?
- 7. java.util.calendar的替代方法是什麼?
- 8. session_register($ var)的替代方法是什麼?
- 9. Response.Redirect()asp.net的替代方法是什麼?
- 10. typeFactory.arrayType(xxx)的替代方法是什麼?
- 11. 什麼是C++ 4.3.2中getdate()函數的替代方法?
- 12. C#中Like運算符的替代方法是什麼?
- 13. 什麼是C#中定時器控件的替代方法。 NET
- 14. 在matlab中等價於diag(x,k)
- 15. J2ME中String.Contains()方法的替代方法是什麼?
- 16. Internet Explorer中formdata.get()方法的替代方法是什麼?
- 17. 什麼是替代方法`__call`
- 18. android的替代方法是什麼:代碼中的條目是什麼?
- 19. 什麼是替代SSRS訂閱的替代方法?
- 20. C++ variadic函數:什麼是最好的替代方法?
- 21. 在xhtml的html中佔位符的替代方法是什麼?
- 22. 棄用com.apple.eawt.ApplicationListener的替代方法有什麼替代方法
- 23. 在Cassandra中建立M:M關係的替代方法是什麼?
- 24. 什麼是在循環中使用GetWindow的替代方法?
- 25. driver.findelements(「」)。get(i)在Ruby中的替代方法是什麼?
- 26. 在android sdk level 23中SSLParameter.setServerNames的替代方法是什麼?
- 27. Selenium.isElementPresent在Webdriver中的替代方法是什麼
- 28. 在tensorflow中numpy.newaxis的替代方法是什麼?
- 29. 在C++的windows線程編程中,pthread_setcanceltype的替代方法是什麼?
- 30. onDestroy方法在接收器中不存在。什麼是替代?
「'Diag(k)'」?你的意思是,從矢量創建一個對角矩陣還是任意矩陣對角線的提取作爲矢量? – leftaroundabout 2012-04-12 18:49:25
...答案取決於你如何用C++表示矩陣和向量。特別是'k'的類型是什麼?無論哪種方式,你不需要Blas或Lapack(ATLAS只是這些的一個實現),因爲它只是一個簡單的循環索引:'for(i = 0; i
sly
2012-04-12 20:15:48