armadillo

    0熱度

    1回答

    我想將ODE_vector類型的對象轉換爲armadillo vec,以便新對象將繼承犰狳庫的線性代數功能。正如我有此問題的一個簡單的例子是使用C++陣列的示範:包含在B1 #include <iostream> #include <random> #include <armadillo> using namespace std; using namespace arma; int

    1熱度

    2回答

    有沒有辦法將行追加到使用.save()函數保存的.mat文件中? 例如在for循環如下: mat M; M.ones(1,5); for (int i=0; i<5; i++) { mat tmp; tmp = M + i; tmp.save("file.mat", arma_ascii) // + some code to append rathe

    0熱度

    1回答

    我在執行矩陣乘法時似乎遇到了精度損失,並且想知道如何防止這種情況。例如,假設壯舉和β是適當的尺寸, Y = feat*beta.rows(0,N); 我一起工作的數字是相當小的值,多數數字是小於1E-3所以有可能是什麼我想實現是不可能的。我還應該注意到這是一個調用C++函數的MATLAB函數,因此涉及到MEX編譯器。當他們到達時,我確實檢查了mex函數中的數字,他們是正確的,只有在上面的這一行

    0熱度

    1回答

    Hello分組傢伙, 我的問題可能是明顯的,但我沒有找到其他職位或犰狳文件的答案。 我想創建矢量B(ARMA ::在我的情況UVEC)中,用給定的矢量A的每一個索引所以需要的元素是(0:A.n_elem-1)。我可以循環它,但我需要優化時間,所以我只想知道,如果我可以生成它沒有循環它。最後一點,我想避免C++ 11. 謝謝你的時間。 編輯1: 我確實使用了find_finite(X)來生成我的索引

    1熱度

    1回答

    繼此question,我想了解如何有效地更新Rccp::NumericMatrix數據類型的子集。 我有以下情形: 的5 x 5需要更新一些的行和列Rcpp::NumericMatrix m。 它將通過引用傳遞給函數(void返回類型),該函數會將其轉換爲arma::mat,並更新各自的submat()。 在這一點上,我不明白如何「應用」函數內發生的變化到傳遞給函數的m矩陣。 的代碼看起來是這樣的

    2熱度

    1回答

    我有一個用RcppArmadillo風格編寫的函數,我想用它來改變調用環境中的變量。我知道這樣做並不可取,但對我來說這很有幫助。具體地說,我試着這樣: #include <RcppArmadillo.h> #include <iostream> //[[Rcpp::export]] void myfun(double &x){ arma::mat X = arma::randu<

    1熱度

    1回答

    我正在將一些準備好的函數的R代碼翻譯爲RcppArmadillo。我想直接在我的Rcpp代碼中使用其中的一些功能,而不是翻譯。例如,我要調用的函數sigma2: sigma2<- function(xi.vec,w.vec,log10lambda,n,q){ lambda <- 10^log10lambda (1/(n-q))*sum((lambda*xi.vec*(w.vec

    -3熱度

    1回答

    我試圖運行自帶的庫中的例子,但我有這樣的錯誤 致命錯誤C1189:#錯誤:「*需要一個較新的編譯器*」 我使用Visual Studio 2010,並做了以下 1 - 我會加入包括文件夾從圖書館到VS2010包括 工程>>屬性>> VS ++目錄>>包括Diretories 我可以看到外部相關的依賴性文件夾 2 - 我已取消註釋「include/armadillo_bits/config.hpp」

    0熱度

    1回答

    我想比較在犰狳中使用spsolve()時SuperLu的稀疏求解器的速度和使用LaPack的密度版本的速度。因此,我寫了這個程序: #include "stdafx.h" #include <iostream> #include <Windows.h> #include <armadillo\armadillo> #define SIZE 2500 #define ROUNDS 250

    1熱度

    1回答

    我想在C++(帶有Armadillo庫)中生成k不同的隨機矩陣,其中n首先不是固定的,並且是我函數中的輸入。這是很容易在犰狳生成使用for循環中下面的代碼隨機矩陣: mat A = randu<mat>(n,n); 但因爲我需要他們在接下來的步驟中,我不得不爲它們分配,例如動態名稱或索引A1,A2,...。 我想知道除了使用指針外,哪種方法最適合這種情況?