活図」DLL数値計算関数ライブラリ集
行列方程式関数パックの収録関数一覧

戻る    Home
機能
分類

関  数   (計265個)   発売中止
1)三角関数
(14個)
double F_sin(double d): 正弦(ラジアン)を返す
double F_sind(double d): 正弦(°)を返す
double F_cos(double d): 余弦(ラジアン)を返す
double F_cosd(double d): 余弦(°)を返す
double F_tan(double d): 正接(ラジアン)を返す
double F_tand(double d): 正接(°)を返す
double F_asin(double d): 逆正弦(ラジアン)を返す
double F_asind(double d): 逆正弦(°)を返す
double F_acos(double d): 逆余弦(ラジアン)を返す
double F_acosd(double d): 逆余弦(°)を返す
double F_atan(double d): 逆正接(ラジアン,-π/2〜π/2)を返す
double F_atand(double d): 逆正接(-90°〜90°)を返す
double F_atan2(double y, double x): y/x の逆正接(ラジアン,-π〜π)を返す
double F_atan2d(double y, double x): y/x の逆正接(-180°〜180°)を返す
2)平方根・指数・対数関数
(5個)
double F_sqrt(double d): 平方根を返す
double F_exp(double d): 自然指数を返す
double F_pow(double x, double y): x の y 乗を返す
double F_ln(double d): 自然対数を返す (d > 0)
double F_log(double d): 常用対数を返す(d > 0)
3)双曲線
(6個)
double F_sinh(double d): 双曲線正弦を返す
double F_cosh(double d): 双曲線余弦を返す
double F_tanh(double d): 双曲線正接を返す
double F_asinh(double d): 逆双曲線正弦を返す
double F_acosh(double d): 逆双曲線余弦を返す,(d ≧ 1.0)
double F_atanh(double d): 逆双曲線正接を返す(-1 < d < 1)
4)他の数学常用関数
(28個)
double F_abs(double d): 絶対値を返す
int F_int(double d): 四捨五入後の整数値を返す
int F_fix(double d): 整数部を返す(小数部は切り捨て)
int F_ceil(double d): d より小さくない最小整数値を返す
int F_floor(double d): d より大きくない最大整数値を返す
int F_sign(double d): 符号関数(1:d>0, 0:d=0, -1:d<0)
int F_sign1(double d): 符号関数(1:d≧0, -1:d<0)
int F_sign2(double d): 符号関数(1:d>0, -1:d≦0)
double F_hypot(double x, double y): xとy を直角辺とする直角三角形の斜辺長を返す
double F_degtorad(double d): 角度変換値(°→ ラジアン)を返す
double F_radtodeg(double d): 角度変換値(ラジアン → °)を返す
int F_euclid(int n1, int n2): 正整数n1とn2の最大公約数を返す
int F_euclid1(int n1, int n2): 正整数n1とn2の最小公倍数を返す
int F_euclid_n(int nun, int* ip): N個正整数n1,n2,..の最大公約数を返す
int F_euclid1_n(int num, int* ip): N個正整数n1,n2,..の最小公倍数を返す
int F_factoring(double n, double* dp): 正整数nの素因数分解
int F_prime(double n, int N, double* dp): 正整数nより大きいN個連続素数を求む
int F_combin(int n, int k): n個の要素からk個を選ぶ組合せの数を返す
int F_days(int year, int month, int day): 元日からの通算日を返す
int F_weekday(int year, int month, int day): 曜日を返す
int F_weeks(int year, int month, int day): 元日からの通算週を返す
int F_delta(double d): δ関数値を返す(1:d=0,0:d!=0)
double F_round(double d, int n): 小数点後の指定桁nまでの四捨五入丸め結果を返す
double F_round1(double d, int n): 有効桁数をn桁まで四捨五入丸めした結果を返す
unsigned int F_bit_and(unsigned int n1,unsigned int n2): 両32ビット整数のビットAND演算の結果(正整数)を返す
unsigned int F_bit_or(unsigned int n1, unsigned int n2): 両32ビット整数のビットOR演算の結果(正整数)を返す
unsigned int F_bit_xor(unsigned int n1,unsigned int n2): 両32ビット整数のビットXOR演算の結果(正整数)を返す
unsigned int F_bit_not(unsigned int n): 32ビット整数nのビット反転演算の結果(正整数)を返す
5)乱数関数
(11個)
int F_rand(): 正整数 1〜32767 間の一様乱数を返す
double F_rand1(): 0.0〜1.0 間の一様乱数を返す
void F_rand_init(int n): 乱数系列の初期化(n:乱数の種)
double F_rand_normal(): 標準正規乱数を返す
double F_rand_exp(): 指数乱数を返す
double F_rand_triang(): 三角乱数を返す
double F_rand_cauchy(): コーシー乱数を返す
double F_rand_logic(): ロジスッテク乱数を返す
int F_rand_geo(double d)(p): 幾何乱数(正整数値)を返す(0<p<1)
int F_rand_poisson(double d): ポアソン乱数(正整数値)を返す
double F_rand_weibull(double d)(α): ワイブル乱数を返す
6)特殊関数
(25個)
double F_sf_bessel1(int n, double x): n次の第1種ベッセル関数値を返す (|n|<30000, |x|<30000)
double F_sf_bessel1a(int n, double x): n次の第1種変形ベッセル関数値を返す (n≧0)
double F_sf_bessel2(int n, double x): n次の第2種ベッセル関数値を返す (|n|<30000, |x|<30000)
double F_sf_bessel2a(int n, double x): n次の第2種変形ベッセル関数値を返す (n≧0, x>0)
double F_sf_gamma(double x): ガンマ関数値を返す (0<x≦170)
double F_sf_gamma1(double x, double v): 不完全ガンマ関数値を返す (0<x≦170, v≧0)
double F_sf_gamma_ln(double x): 対数ガンマ関数値を返す (0<x≦170)
int F_sf_gamma_cpx(double Re, double Im, double *dp): 複素数(Re+iIm)ガンマ関数値([r][k]+i[r][k+1])を求む
double F_sf_beta(double a, double b): ベータ関数値を返す (a>0, b>0)
double F_sf_beta1(double a, double b, double x): 不完全ベータ関数値を返す (a>0, b>0, 0≦x≦1)
double F_sf_error(double x): 誤差関数値を返す
double F_sf_error1(double x): 補誤差関数値を返す
int F_sf_poly_leg(double x, int n, double* dp): n次までのルジャンドル多項式の係数[r]を求む
int F_sf_poly_lag(double x, int n, double* dp): n次までのラゲール多項式の係数[r]を求む
int F_sf_poly_her(double x, int n, double* dp): n次までのエルミート多項式の係数[r]を求む
int F_sf_poly_tch(double x, int n, double* dp): n次までのチェビシェフ多項式の係数[r]を求む
double F_sf_exp_intg(double x): 指数積分関数値を返す (x>0)
double F_sf_sin_intg(double x): 正弦積分関数値を返す
double F_sf_cos_intg(double x): 余弦積分関数値を返す (x>0)
double F_sf_fre_sin(double x): フレネル正弦積分関数値を返す
double F_sf_fre_cos(double x): フレネル余弦積分関数値を返す
double F_sf_ellips1(double x): 第1種完全楕円積分関数値を返す (0≦x≦1)
double F_sf_ellips2(double x): 第2種完全楕円積分関数値を返す (0≦x≦1)
double F_sf_normal(double x): 確率変数xの標準正規分布値を返す (-∞<x<∞)
double F_sf_normal_inv(double d): 確率百分率d(0%〜100%)に対応した標準正規分布の確率変数値を返す
7)複素数演算
(17個)
int F_cpx_add(double Re1, double Im1, double Re2, double Im2, double *o_cpx): 両複素数の加算値([r][k]+i[r][k+1])を求む
int F_cpx_sub(double Re1, double Im1, double Re2, double Im2, double *o_cpx): 両複素数の減算値([r][k]+i[r][k+1])を求む
int F_cpx_mul(double Re1, double Im1, double Re2, double Im2, double *o_cpx): 両複素数の乗算値([r][k]+i[r][k+1])を求む
int F_cpx_div(double Re1, double Im1, double Re2, double Im2, double *o_cpx): 両複素数の除算値([r][k]+i[r][k+1])を求む
int F_cpx_pow(double Re, double Im, double d, double *o_cpx): 複素数(Re+iIm)の d ベキ乗値([r][k]+i[r][k+1])を求む
int F_cpx_exp(double Re, double Im, double *o_cpx): 複素数(Re+iIm)の指数値([r][k]+i[r][k+1])を求む
int F_cpx_root(double Re, double Im, int n, int m, double *o_cpx): 複素数(Re+iIm)のn乗根中のm番目の根([r][k]+i[r][k+1])を求む(m=1,2..n)
double F_cpx_abs(double Re, double Im): 複素数(Re+iIm)の絶対値を返す
double F_cpx_arg(double Re, double Im): 複素数(Re+iIm)の偏角値(-π〜π)を返す
int F_cpx_inv(double Re, double Im, double *o_cpx): 複素数の逆数([r][k]+i[r][k+1])を求む
int F_cpx_ln(double Re, double Im, double *o_cpx): 複素数(Re+iIm)の自然対数値([r][k]+i[r][k+1])を求む
int F_cpx_sin(double Re, double Im, double *o_cpx): 複素数(Re+iIm)の正弦値([r][k]+i[r][k+1])を求む
int F_cpx_cos(double Re, double Im, double *o_cpx): 複素数(Re+iIm)の余弦値([r][k]+i[r][k+1])を求む
int F_cpx_tan(double Re, double Im, double *o_cpx): 複素数(Re+iIm)の正接値([r][k]+i[r][k+1])を求む
int F_cpx_sinh(double Re, double Im, double *o_cpx): 複素数(Re+iIm)の双曲線正弦値([r][k]+i[r][k+1])を求む
int F_cpx_cosh(double Re, double Im, double *o_cpx): 複素数(Re+iIm)の双曲線余弦値([r][k]+i[r][k+1])を求む
int F_cpx_tanh(double Re, double Im, double *o_cpx): 複素数(Re+iIm)の双曲線正接値([r][k]+i[r][k+1])を求む
8)多項式演算
(15個)
int F_poly_add(double *ap, int na, double *bp, int nb, double *rp): 両多項式の加算 [r]=[a]+[b]
int F_poly_sub(double *ap, int na, double *bp, int nb, double *rp): 両多項式の減算 [r]=[a]-[b]
int F_poly_mul(double *ap, int na, double *bp, int nb, double *rp): 両多項式の乗算 [r]=[a]*[b]
int F_poly_div(double *ap, int na, double *bp, int nb, double *rp1, int *o_n1, double *rp2): 両多項式の除算 [r1]*[b]+[r2]=[a]
int F_poly_pow(double *ap, int na, int n, double *rp): 多項式のベキ乗を求む [r]=[a]^n
int F_poly_trans(double *ap, int na, double *rp): 多項式[a]の転置
int F_poly_subst(double *ap, int na, double *bp, int nb, double *rp): 多項式[a]に多項式[b]の代入結果を求む
int F_poly_dif(double *ap, int na, double *rp): 多項式[a]の微分演算
int F_poly_intg(double *ap, int na, double *rp): 多項式[a]の積分演算
double F_poly_val(const double *ap, int na, double d): 多項式[a]への実数dの代入値を返す
int F_poly_valc(const double *ap, int na, double Re, double Im, double *o_cpx): 多項式[a]へ複素数(Re+iIm)の代入値([r][k]+i[r][k+1])を求む
double F_poly_valc_abs(double *ap, int na, double Re, double Im): 多項式[a]へ複素数(Re+iIm)代入の絶対値を返す
double F_poly_valc_arg(double *ap, int na, double Re, double Im): 多項式[a]へ複素数代入の偏角値(-π〜π)を返す
int F_polycpx_trans(double *ap, int na, double *rp): 複素数型多項式[a]の転置([a],[r]:連続2セルのペアで複素数を表す)
int F_polycpx_valc(const double *ap, int na, double Re, double Im, double *o_cpx): 複素数型多項式[a]の複素数の代入値([a],[r]:連続2セルのペアで複素数を表す)
9)分数多項式演算
(10個)
int F_frac_add(const double *i_f1poly, int f1poly_num, const double *i_g1poly, int g1poly_num, const double *i_f2poly, int f2poly_num, const double *i_g2poly, int g2poly_num, double *o_fpoly, int *o_fpoly_num, double *o_gpoly): 両分数多項式の加算 [of]/[og]=([f1]/[g1])+([f2]/[g2])
int F_frac_sub(const double *i_f1poly, int f1poly_num, const double *i_g1poly, int g1poly_num, const double *i_f2poly, int f2poly_num, const double *i_g2poly, int g2poly_num, double *o_fpoly, int *o_fpoly_num, double *o_gpoly): 両分数多項式の減算 [of]/[og]=([f1]/[g1])-([f2]/[g2])
int F_frac_mul(const double *i_f1poly, int f1poly_num, const double *i_g1poly, int g1poly_num, const double *i_f2poly, int f2poly_num, const double *i_g2poly, int g2poly_num, double *o_fpoly, int *o_fpoly_num, double *o_gpoly): 両分数多項式の乗算 [of]/[og]=([f1]/[g1])*([f2]/[g2])
int F_frac_div(const double *i_f1poly, int f1poly_num, const double *i_g1poly, int g1poly_num, const double *i_f2poly, int f2poly_num, const double *i_g2poly, int g2poly_num, double *o_fpoly, int *o_fpoly_num, double *o_gpoly): 両分数多項式の除算 [of]/[og]=([f1]/[g1])÷([f2]/[g2])
int F_frac_isubst(const double *i_fpoly, int fpoly_num, const double *i_gpoly, int gpoly_num, double *o_fRe_poly, int *o_fRe_poly_num, double *o_fIm_poly, int *o_fIm_poly_num, double *o_gpoly): 分数多項式([f]/[g])への純虚数ixの代入分解
int F_frac_feedbk(const double *i_f1poly, int f1poly_num, const double *i_g1poly, int g1poly_num, const double *i_f2poly, int f2poly_num, const double *i_g2poly, int g2poly_num, double *o_fpoly, int *o_fpoly_num, double *o_gpoly): 分数多項式型伝達関数のフィードバック演算
double F_frac_val(const double *i_fpoly, int fpoly_num, const double *i_gpoly, int gpoly_num, double d): 分数多項式([f]/[g])への実数代入の値を返す
int F_frac_valc(const double *i_fpoly, int fpoly_num, const double *i_gpoly, int gpoly_num, double Rm, double Im, double *o_cpx): 分数多項式([f]/[g])への複素数(Re+iIm)代入の値([r][k]+i[r][k+1])を求む
double F_frac_valc_abs(const double *i_fpoly, int fpoly_num, const double *i_gpoly, int gpoly_num, double Rm, double Im): 分数多項式([f]/[g])への複素数(Re+iIm)代入の絶対値を返す
double F_frac_valc_arg(const double *i_fpoly, int fpoly_num, const double *i_gpoly, int gpoly_num, double Rm, double Im): 分数多項式([f]/[g])への複素数(Re+iIm)代入の偏角値(-π〜π)を返す
10)関数値の計算
(9個)
int F_val_fx(const char* Fx, double *o_x, double *o_y, double xs, double xe, double xstep): 関数y=F(x)の関数値を求む
int F_val_zfxy(const char* zFxy, double *o_x, double *o_y, double *o_z, double xs, double xe, double xstep, double ys, double ye, double ystep): 3次元陽関数z=F(x,y)の関数値を求む
int F_val_fit_func(int curve_no, const double* i_c, int n, double *o_x, double *o_y, double xs, double xe, double xstep): 指定番号Noの当てはめ曲線(係数[c])の値を求む
double F_val_sigma(const char* Fx, double xs, double xe, double xstep): F(x) の連続和を返す(Σ演算,x始とx終は整数)
double F_val_seki(const char* Fx, double xs, double xe, double xstep): F(x) の連続乗積を返す(Π演算,x始とx終は整数)
int F_valc_fx(const char* Fx, double Re, double Im, double *o_cpx): F(x)への複素数(Re+iIm)の代入値([r][k]+i[r][k+1])を求む
double F_valc_fx_abs(const char* Fx, double Re, double Im): F(x)への複素数(Re+iIm)代入の絶対値を返す
double F_valc_fx_arg(const char* Fx, double Re, double Im): F(x)への複素数(Re+iIm)代入の偏角値(-π〜π)を返す
int F_val_overlap(int peek_num, const double* i_c, int n, double *o_x, double *o_y, double xs, double xe, double xstep, int sum_or_single, int gauss_or_lorentz): 孤立ピーク波形(係数[c])の計算
11)Bode線図・ベクトル軌跡図
(6個)
int F_val_fx_bode(const char *Fs, double *o_w, double *o_dB, double *o_phase, double sw, double ew): 伝達関数F(s)のBode線図を求む
int F_val_frac_bode(const double *i_fpoly, int fpoly_num, const double *i_gpoly, int gpoly_num, double *o_w, double *o_dB, double *o_phase, double sw, double ew): 分数多項式型伝達関数([f]/[g])のBode線図を求む
int F_val_fx_vect(const char *Fs, double *o_w, double *o_Re, double *o_Im, double sw, double ew): 伝達関数F(s)のベクトル軌跡図を求む
int F_val_fx_vect1(const char *Fs, const double *i_w, int iw_num, double *o_Re, double *o_Im): 伝達関数F(s)のベクトル軌跡図(ω指定)を求む
int F_val_frac_vect(const double *i_fpoly, int fpoly_num, const double *i_Gpoly, int gpoly_num, double *o_w, double *o_Re, double *o_Im, double sw, double ew): 分数多項式型伝達関数([f]/[g])のベクトル軌跡図を求む
int F_val_frac_vect1(const double *i_fpoly, int fpoly_num, const double *i_Gpoly, int gpoly_num, const double *i_w, int iw_num, double *o_Re, double *o_Im) : 分数多項式型伝達関数([f]/[g])のベクトル軌跡図(ω指定)を求む
12)行列演算
(18個)
int F_mtx_pdt(const double *i_mtx, double *o_mtx, double d): 行列のスカーラ乗算 R(m,n)=d*A(m,n)
int F_mtx_add(const double *i_mtxA, const double *i_mtxB, double *o_mtx): 行列の加算 R(m,n)=A(m,n)+B(m,n)
int F_mtx_sub(const double *i_mtxA, const double *i_mtxB, double *o_mtx): 行列の減算 R(m,n)=A(m,n)-B(m,n)
int F_mtx_mul(const double *i_mtxA, const double *i_mtxB, double *o_mtx): 行列の乗算 R(m,l)=A(m,n)*B(n,l)
int F_mtxcpx_mul(const double *i_mtxA, const double *i_mtxB, double *o_mtx): 複素数型行列の乗算 R(m,l)=A(m,n)*B(n,l) ([A],[B],[R]:連続2セルのペアで複素数を表す)
double F_mtx_det(const double *i_mtx): 正方行列 A(n,n) の行列式を返す
int F_mtxcpx_det(const double *i_mtx, double *o_cpx): 複素数型正方行列 A(n,n) の行列式([r][k]+i[r][k+1])を求む([A]:連続2セルのペアで複素数を表す)
int F_mtx_inv(const double *i_mtx, double *o_mtx): 正則行列 A(n,n) の逆行列を求む R(n,n)=1/A(n,n)
int F_mtx_trid_inv(const double *i_sub, int n_sub, const double *i_diag, int n_diag, const double *i_sup, int n_sup, double *o_mtx): 3重対角行列の逆行列を求む
int F_mtxcpx_inv(const double *i_mtx, double *o_mtx): 複素数型正則行列 A(n,n) の逆行列を求む([A],[R]:連続2セルのペアで複素数を表す)
double F_mtx_trace(const double *i_mtx): 正方行列 A(n,n) のトレースを返す
int F_mtx_eigen(const double *i_mtx, double *o_mtx): 実対称行列の固有値・固有ベクトルを求む
int F_mtx_eigen1(const double *i_diag, int n_diag, const double *i_sup, int n_sup, double *o_mtx): 3重実対称行列の固有値・固有ベクトルを求む
int F_mtx_eigen2(const double *i_mtx, double *o_cpx): 任意実正方行列の複素数型固有値を求む
int F_mtx_from_trid(const double *i_sub, int n_sub, const double *i_diag, int n_diag, const double *i_sup, int n_sup, double *o_mtx): 3重対角行列から一般行列への変換
int F_mtx_to_trid(const double *i_mtx, double* o_sub, int *o_nsub, double* o_diag, int *o_ndiag, double* o_sup): 一般行列から3重対角行列への変換
int F_mtx_from_vander(const double *i_d, int nd, double *o_mtx): Vandermonde型行列から一般行列への変換
int F_mtx_to_vander(const double *i_mtx, double *o_d): 一般行列からVandermonde型行列への変換
13)方程式解
(8個)
double F_fx_one(const char *Fx, double x0, double e): F(x)=0 のx0付近の一つの実数解を返す
int F_fx_equ(const char *Fx, double xs, double xe, double xstep, double e, double *o_x): F(x)=0 区間[x始,x終]での全実数解を求む
double F_poly_one(const double *i_a, int na, double x0, double e): 高次代数方程式x0付近一つの実数解を返す
int F_poly_cpx_one(const double *i_a, int na, double Re, double Im, double e, double *o_cpx): 高次代数方程式の値(Re+iIm)付近一つの複素数解([r][k]+i[r][k+1])を求む
int F_poly_equ(const double *i_a, int na, double *o_cpx): 高次代数方程式の全複素数解を求む([r]:連続2セルのペアで複素数を表す)
int F_polycpx_equ(const double *i_a, int na, double e, double *o_cpx): 複素数型代数方程式の複素数解を求む([a],[r]:連続2セルのペアで複素数を表す)
int F_root_locus(const double *i_a, int na, double *o_K, int *o_nK, double *o_Re, double *o_Im, double Ks, double Ke, double Kstep): 代数方程式の根軌跡を求む
int F_root_locus1(const double *i_a, int na, const double *i_K, int nK, double *o_Re, double *o_Im): 代数方程式の根軌跡(iK指定)を求む
14)連立方程式解
(6個)
int F_mtxequ_lu(const double *i_mtxA, const double *i_B, int nB, double *o_R): 連立方程式の実数解(LU分解法)を求む A(n,n)*R(n)=B(n)
int F_mtxequ_chol(const double *i_mtxA, const double *i_B, int nB, double *o_R): 連立方程式の実数解(コレスキ法)を求む A(n,n)*R(n)=B(n)
int F_mtxequ_gauss(const double *i_mtxA, const double *i_B, int nB, double *o_R): 連立方程式の実数解(ガウス・ジョルダン法)を求む A(n,n)*R(n)=B(n)
int F_mtxequ_trid(const double *i_sub, int n_sub, const double *i_diag, int n_diag, const double *i_sup, int n_sup, const double *i_B, int nB, double *o_R): 3重対角連立方程式の実数解を求む
int F_mtxequ_vander(const double *i_d, const double *i_B, int n, double *o_R): Vandermonde型連立方程式の実数解を求む A(n,n)*R(n)=B(n)
int F_mtxcpxequ_gauss(const double *i_mtxA, const double *i_B, int nB, double *o_R): 複素数型連立方程式の複素数解([A],[B],[R]:連続2セルのペアで複素数を表す)
15)常微分方程式数値解
(4個)
int F_dif_equn(const char *Fxy, double *i_a, int ns, double *i_t, int nt, int n, double x0, double h, double *o_x, double *o_y, double xs, double xe, double xstep): 高階常微分方程式の解を求む(初期値問題)
int F_dif_equ1(const char *Fxy, double x0, double y0, double h, double *o_x, double *o_y, double xs, double xe, double xstep): 任意1階常微分方程式の解を求む(初期値問題)
int F_dif_equ2(const char *Fxyy1, double x0, double y0, double y01, double h, double *o_x, double *o_y, double xs, double xe, double xstep): 任意2階常微分方程式の解(初期値問題)
int F_dif_equ3(const char *Fxyy1y2, double x0, double y0, double y01, double y02, double h, double *o_x, double *o_y, double xs, double xe, double xstep): 任意3階常微分方程式の解(初期値問題)
16)数値微分
(4個)
int F_dif_xiyi(const double *i_x, const double *i_y, int n, double *o_x, double *o_dydx, double xs, double xe, double xstep): X単調数値曲線のスプライン1次微分
int F_dif_curve(const double *i_x, const double *i_y, int n, double *o_dydx, int Free0_Close1): 任意数値曲線のスプライン1次微分
int F_dif_fx(const char *Fx, double *o_x, double *o_dydx, double xs, double xe, double xstep): 関数曲線F(x)の数値微分
int F_taylor(const char *Fx, double x0, double dx, int n, double *o_c): 関数F(x)のx0点付近のn次までのテーラ展開
17)数値積分
(9個)
double F_intg_trape(const double *i_x, const double *i_y, int nxy): 数値曲線の数値積分値を返す(台形法)
int F_intg_trape1(const double *i_x, const double *i_y, int nxy, double *o_dxdy): 数値曲線の数値積分値曲線を求む(台形法)
double F_intg_simp2(const double *i_x, const double *i_y, int nxy): 数値曲線の数値積分値を返す(2次シンプソン法)
int F_intg_simp21(const double *i_x, const double *i_y, int nxy, double *o_dxdy): 数値曲線の数値積分値曲線を求む(2次シンプソン法)
double F_intg_simp3(const double *i_x, const double *i_y, int nxy): 数値曲線の数値積分値を返す(3次シンプソン法)
int F_intg_simp31(const double *i_x, const double *i_y, int nxy, double *o_dxdy): 数値曲線の数値積分値曲線を求む(3次シンプソン法)
double F_intg_spline(const double *i_x, const double *i_y, int nxy, double sx, double ex): X単調数値曲線のスプライン数値積分値を返す
double F_intg_fx(const char *i_Fx, double sx, double ex, double xstep): 関数曲線F(x)の数値積分値を返す(台形法)
int F_intg_fx1(const char *i_Fx, double sx, double ex, double xstep, double *o_x, double *o_dxdy): 関数曲線F(x)の数値積分値曲線を求む(台形法)
18)ラプラス逆変換
(3個)
int F_lapinv_fx(const char *Fs, double *o_t, double *o_y, double st, double et, double tstep): 任意式F(s)のラプラス逆変換を行う
int F_lapinv_frac(const double *i_fpoly, int fpoly_num, const double *i_gpoly, int gpoly_num, double *o_t, double *o_y, double st, double et, double tstep): 分数多項式([f][/[g])のラプラス逆変換を行う
int F_lapinv_fx1(const char *Fs, double *o_t, double *o_y, double st, double et, double tstep, int n): 任意式F(s)のラプラス逆変換,精度(0〜5)指定
24)統計演算
(22個)
double F_sum(const double *i_d, int i_num): 数値組[i]の和を返す
double F_abs_sum(const double *i_d, int i_num): 数値組[i]の絶対値の和を返す
double F_mean(const double *i_d, int i_num): 数値組[i]の平均値を返す
double F_meandev(const double *i_d, int i_num): 数値組[i]の平均絶対偏差を返す
double F_stddev(const double *i_d, int i_num): 数値組[i]の標準偏差(/n)を返す
double F_stddev1(const double *i_d, int i_num): 数値組[i]の標準偏差(/(n-1))を返す
double F_abs_mean(const double *i_d, int i_num): 数値組[i]の絶対値の平均値を返す
double F_square_mean(const double *i_d, int i_num): 数値組[i]の2乗値の平均値を返す
double F_geo_mean(const double *i_d, int i_num): 数値組[i](正実数)の幾何平均値を返す
double F_ham_mean(const double *i_d, int i_num): 数値組[i](非零数)の調和平均値を返す
double F_variance(const double *i_d, int i_num): 数値組[i]の分散を返す
int F_histgram(const double *i_d, int i_num, double *o_val, double *o_count): 数値組[i]のヒストグラムを求む([o]:値,[o個数]:値[o]に対応の個数)
int F_histgram1(const double *i_d, int i_num, const double *i_ref, int ref_num, double *o_count): 数値組[ref]区間分け(隣接2セルで一つの区間を定義)に従い,数値組[i]のヒストグラムを求む
double F_correlation(const double *i_x, const double *i_y, int i_num): 両数値組の相関係数を返す
double F_test_t(const double *i_x, int x_num, const double *i_y, int y_num): 二つ分布平均差のt検定(等分散)を返す
double F_test_tu(const double *i_x, int x_num, const double *i_y, int y_num): 二つ分布平均差のt検定(異分散)を返す
double F_test_tp(const double *i_x, const double *i_y, int i_num): 二つ分布平均差のt検定(対標本)を返す
double F_test_f(const double *i_x, int x_num, const double *i_y, int y_num): 二つ分布分散のF検定を返す
double F_t_distrib(int n, double alpha): 自由度nで確率αのt分布値を返す
double F_f_distrib(int m, int n, double alpha): 自由度mとnで確率αのF分布値を返す
double F_chi_distrib(int n, double alpha): 自由度nで確率αのカイ2乗分布値を返す
int F_linear_prog(const double *i_mtx, int m1, int m2, int m3, double *o_c) : 線形計画法(シンプレックス法)
25)データ形式変換
(24個)
int F_xiyi_to_xyi(const double *i_x, const double *i_y, int i_num, double *o_d): [o]に[ix]と[iy]のセルを1個ずつ交互に畳み込み
int F_xiyizi_to_xyzi(const double *i_x, const double *i_y, const double *i_z, int i_num, double *o_d): [o]に[ix],[iy],[iz]のセルを1個ずつ交互に畳み込み
int F_xyi_to_xiyi(const double *i_d, int i_num, double *o_x, double *o_y): [i]のセルを1個ずつ交互に[ox]と[oy]へ分け合う
int F_xyzi_to_xiyizi(const double *i_d, int i_num, double *o_x, double *o_y, double *o_z): [i]のセルを1個ずつ交互に[ox],[oy],[oz]へ分け合う
int F_mtx_to_net(const double *i_mtx, double *o_d): 行列から列型行列への変換
int F_net_to_mtx(const double *i_d, int i_num, double *o_d, int m, int n): 列型行列から行列への変換
int F_xy_to_net(const double *i_x, int ix_num, const double *i_y, int iy_num, double *o_x, double *o_y): XYの2単列座標から四角メッシュを表す二つの列型行列への変換
int F_net_to_xy(const double *i_x, const double *i_y, int i_num, double *o_x, int *ox_num, double *o_y): 四角メッシュを表す二つの列型行列からXYの2単列座標への変換
int F_xiyi_to_x2y2(const double *i_x, const double *i_y, int i_num, double *o_x, double *o_y): 曲線から平面線分(連続2セルのペアで線分を表す)への分解
int F_xiyizi_to_x2y2z2(const double *i_x, const double *i_y, const double *i_z, int i_num, double *o_x, double *o_y, double *o_z): 空間曲線から空間線分(連続2セルのペアで線分を表す)への分解
int F_x2y2_to_xiyi(const double *i_x, const double *i_y, int i_num, double *o_x, double *o_y): 平面線分(連続2セルのペアで線分を表す)から曲線への連結変換
int F_x2y2z2_to_xiyizi(const double *i_x, const double *i_y, const double *i_z, int i_num, double *o_x, double *o_y, double *o_z): 空間線分(連続2セルのペアで線分を表す)から空間曲線への連結変換
int F_net_to_x4y4(const double *i_x, const double *i_y, int i_num, int m, int n, double *o_x, double *o_y): 列型行列から平面独立四角形群(連続4セルで1個四角形を表す)への分解
int F_net_to_x4y4z4(const double *i_x, const double *i_y, const double *i_z, int i_num, int m, int n, double *o_x, double *o_y, double *o_z): 列型行列から空間独立四角形群への分解
int F_ary_to_net(double sx, double ex, double xstep, double sy, double ey, double ystep, double *o_x, double *o_y): 四角メッシュを表す二つの列型行列の作成
int F_ary_to_x4y4(double sx, double ex, double xstep, double sy, double ey, double ystep, double *o_x, double *o_y): 平面独立四角形群(連続4セルで1個四角形を表す)の作成
int F_fem_to_x3y3z3(const double *i_x, const double *i_y, const double *i_z, int i_num, const double *i_n1, const double *i_n2, const double *i_n3, int in_num, double *o_x, double *o_y, double *o_z): FEM型3次元データから独立三角形群への変換
int F_fem_to_x4y4z4(const double *i_x, const double *i_y, const double *i_z, int i_num, const double *i_n1, const double *i_n2, const double *i_n3, const double *i_n4, int in_num, double *o_x, double *o_y, double *o_z): FEM型3次元データから独立四角形群への変換
int F_x3y3z3_to_fem(const double *i_x, const double *i_y, const double *i_z, int i_num, double *o_x, double *o_y, double *o_z, int *o_num, double *o_n1, double *o_n2, double *o_n3): 独立三角形群型次元データからFEM型への変換
int F_x4y4z4_to_fem(const double *i_x, const double *i_y, const double *i_z, int i_num, double *o_x, double *o_y, double *o_z, int *o_num, double *o_n1, double *o_n2, double *o_n3, double *o_n4): 独立四角形群型3次元データからFEM型への変換
int F_mtx_trans1(const double *i_mtx, double *o_mtx, int type): 行列の縦横並べ替え
int F_net_trans(const double *i_d, int i_num, int m, int n, double *o_d, int type): 列型行列の縦横並び変え
int F_arrange_2d(const double *i_x, const double *i_y, int i_num, int type, double x0, double y0, double *o_x, double *o_y): 基準点(x0,y0)と近い順で平面三角・四角要素群を再整列
int F_arrange_3d(const double *i_x, const double *i_y, const double *i_z, int i_num, int type, double x0, double y0, double *o_x, double *o_y, double *o_z): 基準点(x0,y0)と近い順で空間三角・四角要素を再整列
27)等高線・交線演算
(4個)
int F_contour(const double *i_x, const double *i_y, const double *i_z, int i_num, int type, double z, double *o_x, double *o_y): (z=z0)場合の3次元データの等高線分を求む
int F_contour_3d(const double *i_x, const double *i_y, const double *i_z, int i_num, int type, double A, double B, double C, double D, double *o_x, double *o_y): 3次元データと面Ax+By+Cz=Dとの2点交線分(面上交線)を求む
int F_contour_3d1(const double *i_x, const double *i_y, const double *i_z, int i_num, int type, double A, double B, double C, double D, double *o_x, double *o_y, double *o_z): 3次元データと面Ax+By+Cz=Dとの空間2点交線分を求む
int F_trans_3d(const double *i_x, const double *i_y, const double *i_z, int i_num, double A, double B, double C, double D, double *o_x, double *o_y, double *o_z, int type): 面Ax+By+Cz=Dの直交座標系と通常直交座標系の変換
28)点集の三角・四角分割
(8個)
int F_dots_bound(const double *i_x, const double *i_y, int i_num, double *o_x, double *o_y): 平面点集の境界(凸包)を求む
int F_dots_bound1(const double *i_x, const double *i_y, int i_num, double *o_x, double *o_y, double angle): 平面点集の境界(凹包)を求む
int F_quad_2d(const double *i_x, const double *i_y, int i_num, int Nx, int Ny, double *o_x, double *o_y): 平面点集の平面四角形群への規則分割
int F_quad_3d(const double *i_x, const double *i_y, const double *i_z, int i_num, int Nx, int Ny, double *o_x, double *o_y, double *o_z): 空間点集の空間四角形群への規則分割
int F_delaunay_2d(const double *i_x, const double *i_y, int i_num, double *o_x, double *o_y): 平面点集の平面ドローネー三角形網への分割
int F_delaunay_3d(const double *i_x, const double *i_y, const double *i_z, int i_num, double *o_x, double *o_y, double *o_z): 空間点集の空間ドローネー三角形網への分割
int F_delaunay1_3d(const double *i_x, const double *i_y, const double *i_z, int i_num, double *o_x, double *o_y, double *o_z, int n): 空間点集の空間ドローネー三角形網への細分割(n=1〜5)
int F_varonoi(const double *i_x, const double *i_y, int i_num, double *o_x, double *o_y): ドローネー三角形網からボロノイ図(線分集合)を求む
29)他の曲線演算
(9個)
int F_triang_circle(double x1, double y1, double x2, double y2, double x3, double y3, double *o_d): 三角形の外接円の円心([o][1],[o][2])と半径[o][3]を求む
int F_triang_circle1(double x1, double y1, double x2, double y2, double x3, double y3, double *o_d): 三角形の内接円の円心([o][1],[o][2])と半径[o][3]を求む
double F_area_triang(double a, double b, double c): 3辺長による三角形面積を返す
double F_area_poly(const double *i_x, const double *i_y, int i_num): 平面多角形(有序)の面積を返す
int F_barycenter(const double *i_x, const double *i_y, int i_num, double *o_x, double *o_y): 平面多角形の重心位置([ox][1],[oy][1])を求む
double F_length_2d(const double *i_x, const double *i_y, int i_num): 平面曲線全長を返す
double F_length_3d(const double *i_x, const double *i_y, const double *i_z, int i_num): 空間曲線全長を返す
int F_distance(const double *i_x, const double *i_y, int i_num, double px, double py, double *o_x, double *o_y): 点と数値線の最短直線([ox][1],[oy][1])〜([ox][2],[oy][2])を求め,その距離を返す
int F_rotate_2d(const double *i_x, const double *i_y, int i_num, double angle_x, double angle_y, double *o_x, double *o_y): 平面点集の回転演算(°)

 戻る    Home