valarray

    1熱度

    1回答

    我對C++比較陌生,但我有一些(稀缺)編碼和數值經驗。 我知道這個問題會不時發佈,你如何整合一個數組。在MATLAB中,你可以強制你的數組成爲一個函數(我忘記了它是如何的,但我知道我之前做過),並將它發送給內置的集成器,所以我的問題是你如何在C++中做到這一點。 我有這個積分: I = integral(A(z)*sin(qz)*dz) q是隻需雙擊常量,z是積分變量,而A(z)是一個數組(我

    1熱度

    2回答

    valarray<double>可以乘以標量。但是,如果我想要乘以valarray<complex<double>>的標量,則會出現錯誤。我想知道是否有辦法以一種漂亮的方式做到這一點。這是問題的再現: valarray<complex<double>> v1{ { complex<double>{1,0}, complex<double>{2,0}, complex<double>{3,0} }

    3熱度

    1回答

    什麼不合格捕獲lambda被傳遞給apply方法std::valarray? 考慮下面的代碼: int main() { std::valarray<int> arr = {1, 2, 3, 4, 5, 6}; auto arr1 = arr.apply([](int val) { return val * 2; }); // compiles int n = 3;

    0熱度

    1回答

    我收到錯誤信息不匹配功能: iterDelayEst.cpp:32:21: error: no matching function for call to ‘conj(CArray&)’ auto nf1= ((x*conj(x)) * (x2*conj(x2))) ^ iterDelayEst.cpp:32:21: note: candidates are: In file

    0熱度

    1回答

    我已經交流數組,它包含valarrays如下面的代碼剪斷, #include <iostream> #include <valarray> #include <math.h> using namespace std; typedef uint uint32_t; typedef std::valarray<uint32_t> uivector; int main() {

    1熱度

    1回答

    我有一個函數接受對valarray的const引用,我希望能夠切片數組並將切片傳遞給另一個需要const slice_array的函數。我知道我可以使用operator []和slice來從原始valarray中獲得一個新的複製valarray,但我想避免複製。一切都是常量,所以我覺得應該沒問題。但是,僅當valarray的下標運算符的文檔應用於非常量valarray時纔會返回slice_arra

    1熱度

    1回答

    考慮下面的代碼片段, #include <iostream> #include <valarray> using namespace std; std::ostream & operator<<(std::ostream & out, const std::valarray<int> inputVector); typedef std::valarray<std::valarray<i

    -3熱度

    1回答

    我想申請FFT轉換參數1(this rosettacode.org C++ implementation of FFT:void fft(CArray &x) { ... },或者我應該使用C implementation?)由該數據給出的數組: float *x VstInt32 sampleFrames // basically the length of the array 當我做:

    0熱度

    1回答

    我正在處理一組複數a和一組實數b(如double)。 typedef std::complex<double> Complex; std::valarray<Complex> a(1024); std::valarray<double> b(1024); std::valarray<double> modulus = std::abs(a); // problem 1 std::val

    5熱度

    1回答

    我是一個Windows 7 64bit機器上使用Visual Studio 2010 Pro,我想在valarray使用count(從<algorithm>頭): int main() { valarray<bool> v(false,10); for (int i(0);i<10;i+=3) v[i]=true; cout << count(&v[