⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dynarrutils.h

📁 C++ Math Lib. C++ Builder must use.
💻 H
字号:
//---------------------------------------------------------------------------
// N.V.Shokhirev
// created: 20040809
// modified: 20040809
//---------------------------------------------------------------------------
#ifndef dynarrutilsH
#define dynarrutilsH
#include <math.h>
#include <stdlib.h>
#include "dynarrays.h"
#include "MatUtils.h"
//---------------------------------------------------------------------------

bool SameLim(Lim1D& a1, Lim1D& a2);

bool SameLim(Lim2D& a1, Lim2D& a2);

bool IsSquare(Lim2D& a);

double Diff(FArr1D& a1, FArr1D& a2);

double Diff(FArr2D& a1, FArr2D& a2);

double minval(FArr1D& a, int& i);

double maxval(FArr1D& a, int& i);

double maxabs(FArr1D& a, int& i);

void minmax(FArr1D& a, double& amin, double& amax, bool reset);

bool Equal(double x1, double x2, double eps = eps0);

bool Equal(IArr1D& a1, IArr1D& a2);

bool Equal(FArr1D& a1, FArr1D& a2, double eps = eps0);

bool Equal(FArr2D& a1, FArr2D& a2, double eps = eps0);

void RandArr(IArr1D& a, int v1, int v2);

void RandArr(FArr1D& a, double v1, double v2);

void RandArr(FArr2D& a, double v1, double v2, int sym = 0);

void ShiftDiag(FArr2D& a, double v);

void MultArr(FArr1D& a, double v);

void MultArr(FArr2D& a, double v);

double Norm2(FArr1D& a1);

double Dot(FArr1D& a1, FArr1D& a2);

FArr1D Combine(double v1, FArr1D& a1, double v2, FArr1D& a2);

FArr2D Combine(double v1, FArr2D& a1, double v2, FArr2D& a2);

// Transpose
FArr2D MT(FArr2D& a);

FArr1D MxV(FArr2D& a1, FArr1D& a2);

FArr1D VxM(FArr1D& a1, FArr2D& a2);

FArr2D MxM(FArr2D& a1, FArr2D& a2);

/*
 Fourier transform T0[j] corresponds to non-centered frequency          <br>                  <br>
         Q[j] = j*2*Pi/(dT*N)   j = 0, 1, 2, .. , N-1                   <br>
 Centered frequency:     F[j] = j*2*Pi/(dT*N)   Mmin <= j <= Mmax       <br>
 where Mmin = -((N-1) div 2), Mmax = (M div 2)                          <br>
 The transform corresponding to the centered frequency                  <br>
              C[m] = T0[ m ]  0 <= m <= Mmax                            <br>
              C[m] = T0[N-m]  Mmin <= m < 0                             <br>
 */
void CenterToTrans(FArr1D& T, FArr1D& C);

void TransToCenter(FArr1D& T, FArr1D& C);

int cycle(int i, int L, int H, int D);

double extend(FArr1D& a, int i, bool cyclic);

double extend0(FArr1D& a, int i, bool cyclic);

void Smooth5(FArr1D& p0, FArr1D& p1);


#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -