SMG2S
Sparse Matrix Generator with Given Spectrum
|
|
400 struct ds_parMatSparse;
454 struct dl_parMatSparse;
507 struct zs_parMatSparse;
560 struct zl_parMatSparse;
long dl_parVecGetLocSize(dl_parVec_t *pv)
C-interface of parVector::GetLocalSize()
Definition: c-smg2s.cc:275
MPI_Comm zs_parVecGetComm(zs_parVec_t *pv)
C-interface of parVector::GetComm()
Definition: c-smg2s.cc:394
long dl_parVecGetLowerBound(dl_parVec_t *pv)
C-interface of parVector::GetLowerBound()
Definition: c-smg2s.cc:268
int parVecMapL2G(parVecMap_t *pv, int local_index)
C-interfance of parVectorMap::Loc2Glob(S local_index)
Definition: c-smg2s.cc:136
long nilpL_getDegree(nilpL_t *nilp)
C-interface of Nilpotent::getDegree.
Definition: c-smg2s.cc:74
dcomplex_t zl_parVecDot(zl_parVec_t *pv, zl_parVec_t *pv2)
C-interface of parVector::VecDot(parVector v)
Definition: c-smg2s.cc:529
void zs_writeToTxtCmplx(zs_parVec_t *pv, char *spectrum)
C-interface of parVector::writeToCmplx(std::string file_name)
Definition: c-smg2s.cc:436
int zs_parMatSparse_GetNNzLoc(zs_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetNnzLoc()
Definition: c-smg2s.cc:721
int ds_parVecG2L(ds_parVec_t *pv, int global_index)
C-interface of parVector::Glob2Loc(S global_index)
Definition: c-smg2s.cc:216
void dl_parMatSparse_SetVal(dl_parMatSparse_t *pm, long row, long col, double val)
C-interface of parMatrixSparse::SetValue (S row, S col, T value)
Definition: c-smg2s.cc:666
nilpL_t * newNilpL_4(long *nilpvec, long diag, long size)
C-interface of Nilpotent::Nilpotent(std::vector<S> nilpvec, S diag, S size)
Definition: c-smg2s.cc:67
initMatrix_t * newInitMatrix_1()
C-interface of initMat::initMat()
Definition: c-smg2s.cc:87
parVecMap_t * zs_parVecGetMap(zs_parVec_t *pv)
C-interface of parVector::GetVecMap()
Definition: c-smg2s.cc:386
void zl_parVecScale(zl_parVec_t *pv, dcomplex_t scale)
C-interface of parVector::VecScale(T scale)
Definition: c-smg2s.cc:525
void zs_parMatSparse_AddValLocal(zs_parMatSparse_t *pm, int row, int col, dcomplex_t val)
C-interface of parMatrixSparse::AddValueLocal(S row, S col, T value)
Definition: c-smg2s.cc:741
void dl_parVec_destory(dl_parVec_t *pv)
Destory the struct.
Definition: c-smg2s.cc:265
int ds_parVecGetGlobSize(ds_parVec_t *pv)
C-interface of parVector::GetGlobalSize()
Definition: c-smg2s.cc:198
long parVecMapLGetLocSize(parVecMapL_t *pv)
C-interfance of parVectorMap::GetLocalSize()
Definition: c-smg2s.cc:168
struct nilp nilp_t
Creates a type name for nilp which is a C-interface for Nilpotent with `S=int`.
Definition: c-smg2s.h:66
void zl_parMatSparse_SetVal(zl_parMatSparse_t *pm, long row, long col, dcomplex_t val)
C-interface of parMatrixSparse::SetValue (S row, S col, T value)
Definition: c-smg2s.cc:813
zs_parMatSparse_t * new_zs_ParMatSparse_1(zs_parVec_t *pv)
C-interface of parMatrixSparse::parMatrixSparse(parVector< T, S > vec)
Definition: c-smg2s.cc:706
int ds_parVecL2G(ds_parVec_t *pv, int local_index)
C-interface of parVector::Loc2Glob(S local_index)
Definition: c-smg2s.cc:213
ds_parMatSparse_t * ds_nonsymmconj(int probSize, nilp_t *nilp, initMatrix_t *init, char *spectrum, MPI_Comm comm)
C-interface of function nonsymm (S probSize, Nilpotent< S > nilp, initMat< S > init,...
Definition: c-smg2s.cc:1074
nilp_t * newNilp_4(int *nilpvec, int diag, int size)
C-interface of Nilpotent::Nilpotent(std::vector<S> nilpvec, S diag, S size)
Definition: c-smg2s.cc:39
int ds_parVecGetUpperBound(ds_parVec_t *pv)
C-interface of parVector::GetUpperBound()
Definition: c-smg2s.cc:191
dl_parVec_t * new_dl_ParVec_2(parVecMapL_t *map)
C-interface of parVector::parVector(parVectorMap<S> map)
Definition: c-smg2s.cc:262
void zs_parVecSetVal(zs_parVec_t *pv, int index, dcomplex_t val)
C-interface of parVector::SetValueGlobal(S index, T value)
Definition: c-smg2s.cc:410
zl_parMatSparse_t * new_zl_ParMatSparse_2(parVecMap_t *map)
C-interface of parMatrixSparse::parMatrixSparse(parVectorMap< S > map)
struct parVecMapL parVecMapL_t
Creates a type name for parVecMap which is a C-interface for parVectorMap with `S=long` typedef struc...
Definition: c-smg2s.h:167
long zl_parVecGetUpperBound(zl_parVec_t *pv)
C-interface of parVector::GetUpperBound()
Definition: c-smg2s.cc:454
long parVecMapLGetGlobSize(parVecMapL_t *pv)
C-interfance of parVectorMap::GetGlobalSize()
Definition: c-smg2s.cc:171
void zl_parMatSparse_toCSRArray(zl_parMatSparse_t *pm, long *nrows, long *nnz, long **roffs, long **cols, dcomplex_t **val)
convert a parMatrixSparse matrix into CSR format
Definition: c-smg2s.cc:833
void dl_parVecSetToVal(dl_parVec_t *pv, double val)
C-interface of parVector::SetToValue(T value)
Definition: c-smg2s.cc:299
void zs_parVecSetToVal(zs_parVec_t *pv, dcomplex_t val)
C-interface of parVector::SetToValue(T value)
Definition: c-smg2s.cc:403
void ds_parMatSparse_initMat(ds_parMatSparse_t *pm, int diagl, int diagu, double Scale, double Sparsity)
C-interface of parMatrixSparse::initMat(S diag_l, S diag_u, Base< T > scale, T shift,...
Definition: c-smg2s.cc:616
struct dl_parMatSparse dl_parMatSparse_t
Creates a type name for dl_parMatSparse which is a C-interface for parMatrixSparse with `T=double` an...
Definition: c-smg2s.h:456
initMatrix_t * newInitMatrix_4(int diagl, int diagu, double Scale, double Sparsity)
C-interface of initMat::initMat(S diagl, S diagu, double Scale, double Sparsity)
Definition: c-smg2s.cc:96
void dl_parMatSparse_Wrt2MM(dl_parMatSparse_t *pm, char *file_name)
C-interface of parMatrixSparse::writeToMatrixMarket(std::string file_name)
Definition: c-smg2s.cc:700
long dl_parVecG2L(dl_parVec_t *pv, long global_index)
C-interface of parVector::Glob2Loc(S global_index)
Definition: c-smg2s.cc:296
void ds_writeToTxt(ds_parVec_t *pv, char *spectrum)
C-interface of parVector::writeToTxt (std::string file_name)
Definition: c-smg2s.cc:245
void ds_parVecSetToVal(ds_parVec_t *pv, double val)
C-interface of parVector::SetToValue(T value)
Definition: c-smg2s.cc:219
void ds_parMatSparse_AddVal(ds_parMatSparse_t *pm, int row, int col, double val)
C-interface of parMatrixSparse::AddValue(S row, S col, T value)
Definition: c-smg2s.cc:584
zs_parMatSparse_t * zs_nonherm_2(int probSize, nilp_t *nilp, initMatrix_t *init, zs_parVec_t *spec)
C-interface of function nonherm (S probSize, Nilpotent< S > nilp, initMat< S > init,...
Definition: c-smg2s.cc:941
struct parVecMap parVecMap_t
Creates a type name for parVecMap which is a C-interface for parVectorMap with `S=int`.
Definition: c-smg2s.h:147
MPI_Comm ds_parVecGetComm(ds_parVec_t *pv)
C-interface of parVector::GetComm()
Definition: c-smg2s.cc:210
int ds_parMatSparse_GetNCols(ds_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetNCols()
Definition: c-smg2s.cc:560
void ds_nonsymmconj_3(int probSize, nilp_t *nilp, ds_parMatSparse_t *Am, zs_parVec_t *spec)
C-interface of function nonsymmconj (S probSize, Nilpotent< S > nilp, parMatrixSparse< T,...
Definition: c-smg2s.cc:1150
void nilpL_destory(nilpL_t *nilp)
Destory a nilp struct.
Definition: c-smg2s.cc:71
long dl_parMatSparse_GetLowerBound(dl_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetLowerBound()
Definition: c-smg2s.cc:654
double ds_parVecDot(ds_parVec_t *pv, ds_parVec_t *pv2)
C-interface of parVector::VecDot(parVector v)
Definition: c-smg2s.cc:237
void dl_nonsymmconj_3(long probSize, nilpL_t *nilp, dl_parMatSparse_t *Am, zl_parVec_t *spec)
C-interface of function nonsymmconj (S probSize, Nilpotent< S > nilp, parMatrixSparse< T,...
Definition: c-smg2s.cc:1157
int zs_parVecGetGlobSize(zs_parVec_t *pv)
C-interface of parVector::GetGlobalSize()
Definition: c-smg2s.cc:358
int parVecMapGetLocSize(parVecMap_t *pv)
C-interfance of parVectorMap::GetLocalSize()
Definition: c-smg2s.cc:142
void zl_parMatSparse_initMat(zl_parMatSparse_t *pm, long diagl, long diagu, double Scale, double Sparsity)
C-interface of parMatrixSparse::initMat(S diag_l, S diag_u, Base< T > scale, T shift,...
Definition: c-smg2s.cc:628
void ds_parVecScale(ds_parVec_t *pv, double scale)
C-interface of parVector::VecScale(T scale)
Definition: c-smg2s.cc:234
long zl_parVecGetLowerBound(zl_parVec_t *pv)
C-interface of parVector::GetLowerBound()
Definition: c-smg2s.cc:451
parVecMapL_t * zl_parVecGetMap(zl_parVec_t *pv)
C-interface of parVector::GetVecMap()
Definition: c-smg2s.cc:489
dl_parMatSparse_t * dl_nonsymm(long probSize, nilpL_t *nilp, initMatrixL_t *init, char *spectrum, MPI_Comm comm)
C-interface of function nonsymm (S probSize, Nilpotent< S > nilp, initMat< S > init,...
Definition: c-smg2s.cc:1006
zl_parMatSparse_t * new_zl_ParMatSparse_1(zl_parVec_t *pv)
C-interface of parMatrixSparse::parMatrixSparse(parVector< T, S > vec)
Definition: c-smg2s.cc:782
ds_parMatSparse_t * new_ds_ParMatSparse_1(ds_parVec_t *pv)
C-interface of parMatrixSparse::parMatrixSparse(parVector< T, S > vec)
Definition: c-smg2s.cc:548
void ds_parVecSetVal(ds_parVec_t *pv, int index, double val)
C-interface of parVector::SetValueGlobal(S index, T value)
Definition: c-smg2s.cc:225
long dl_parVecL2G(dl_parVec_t *pv, long local_index)
C-interface of parVector::Loc2Glob(S local_index)
Definition: c-smg2s.cc:293
parVecMapL_t * newParVecMapL(MPI_Comm ncomm, long lbound, long ubound)
C-interfance of parVectorMap::parVectorMap(MPI_Comm ncomm, S lbound, S ubound)
Definition: c-smg2s.cc:156
dcomplex_t zl_parMatSparse_GetValLocal(zl_parMatSparse_t *pm, long row, long col)
C-interface of parMatrixSparse::GetValueLocal (S row, S col)
Definition: c-smg2s.cc:825
initMatrixL_t * newInitMatrixL_1()
C-interface of initMat::initMat()
Definition: c-smg2s.cc:107
double dl_parMatSparse_GetVal(dl_parMatSparse_t *pm, long row, long col)
C-interface of parMatrixSparse::GetValue (S row, S col)
Definition: c-smg2s.cc:678
void ds_parMatSparse_destory(ds_parMatSparse_t *pm)
Destory the struct.
Definition: c-smg2s.cc:554
void ds_parMatSparse_SetValLocal(ds_parMatSparse_t *pm, int row, int col, double val)
C-interface of parMatrixSparse::SetValueLocal(S row, S col, T value)
Definition: c-smg2s.cc:575
void ds_parMatSparse_View(ds_parMatSparse_t *pm)
C-interface of parMatrixSparse::MatView()
Definition: c-smg2s.cc:609
void dl_nonsymm_3(long probSize, nilpL_t *nilp, dl_parMatSparse_t *Am, dl_parVec_t *spec)
C-interface of function nonsymm (S probSize, Nilpotent< S > nilp, parMatrixSparse< T,...
long dl_parMatSparse_GetNRows(dl_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetNRows()
Definition: c-smg2s.cc:645
zl_parVec_t * zl_specNonSymmLoad(parVecMapL_t *map, char *spectrum)
C-interface of function specNonSymmCplex(parVectorMap<S> index_map, std::string spectrum)
Definition: c-smg2s.cc:874
int zs_parVecGetLocSize(zs_parVec_t *pv)
C-interface of parVector::GetLocalSize()
Definition: c-smg2s.cc:355
void ds_nonsymm_3(int probSize, nilp_t *nilp, ds_parMatSparse_t *Am, ds_parVec_t *spec)
C-interface of function nonsymm (S probSize, Nilpotent< S > nilp, parMatrixSparse< T,...
Definition: c-smg2s.cc:1057
double imag
Definition: c-smg2s.h:55
zs_parVec_t * zs_specNonSymmLoad(parVecMap_t *map, char *spectrum)
C-interface of function specNonSymmCplex(parVectorMap<S> index_map, std::string spectrum)
Definition: c-smg2s.cc:869
void zl_parVecSetToVal(zl_parVec_t *pv, dcomplex_t val)
C-interface of parVector::SetToValue(T value)
Definition: c-smg2s.cc:507
struct zl_parVec zl_parVec_t
Creates a type name for zl_parVec which is a C-interface for parVector with `T=std::complex<double>` ...
Definition: c-smg2s.h:345
void dl_parMatSparse_Show(dl_parMatSparse_t *pm)
C-interface of parMatrixSparse::show()
Definition: c-smg2s.cc:694
void initMatrixL_show(initMatrixL_t *init)
C-interface of initMat::show()
Definition: c-smg2s.cc:119
double dl_parMatSparse_GetValLocal(dl_parMatSparse_t *pm, long row, long col)
C-interface of parMatrixSparse::GetValueLocal (S row, S col)
Definition: c-smg2s.cc:675
void zs_nonherm_3(int probSize, nilp_t *nilp, zs_parMatSparse_t *Am, zs_parVec_t *spec)
C-interface of function nonherm (S probSize, Nilpotent< S > nilp, parMatrixSparse< T,...
Definition: c-smg2s.cc:967
void zl_parMatSparse_AddValLocal(zl_parMatSparse_t *pm, long row, long col, dcomplex_t val)
C-interface of parMatrixSparse::AddValueLocal(S row, S col, T value)
Definition: c-smg2s.cc:817
dcomplex_t * zs_parVecGetArray(zs_parVec_t *pv)
C-interface of parVector::GetArray()
Definition: c-smg2s.cc:375
parVecMap_t * ds_parVecGetMap(ds_parVec_t *pv)
C-interface of parVector::GetVecMap()
Definition: c-smg2s.cc:250
long dl_parMatSparse_GetUpperBound(dl_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetUpperBound()
Definition: c-smg2s.cc:657
parVecMap_t * newParVecMap_empty()
C-interfance of parVectorMap::parVectorMap()
Definition: c-smg2s.cc:127
void ds_parVec_destory(ds_parVec_t *pv)
Destory the struct.
Definition: c-smg2s.cc:185
MPI_Comm zl_parVecGetComm(zl_parVec_t *pv)
C-interface of parVector::GetComm()
Definition: c-smg2s.cc:498
long zl_parMatSparse_GetLowerBound(zl_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetLowerBound()
Definition: c-smg2s.cc:800
long zl_parVecG2L(zl_parVec_t *pv, long global_index)
C-interface of parVector::Glob2Loc(S global_index)
Definition: c-smg2s.cc:504
int zs_parMatSparse_GetLowerBound(zs_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetLowerBound()
Definition: c-smg2s.cc:724
dcomplex_t zl_parMatSparse_GetVal(zl_parMatSparse_t *pm, long row, long col)
C-interface of parMatrixSparse::GetValue (S row, S col)
Definition: c-smg2s.cc:829
int ds_parMatSparse_GetNNzLoc(ds_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetNnzLoc()
Definition: c-smg2s.cc:563
dl_parMatSparse_t * new_dl_ParMatSparse_2(parVecMapL_t *map)
C-interface of parMatrixSparse::parMatrixSparse(parVectorMap< S > map)
Definition: c-smg2s.cc:639
void initMatrixL_destory(initMatrixL_t *init)
Destory a initMatrixL struct.
Definition: c-smg2s.cc:122
void dl_parMatSparse_AddVal(dl_parMatSparse_t *pm, long row, long col, double val)
C-interface of parMatrixSparse::AddValue(S row, S col, T value)
Definition: c-smg2s.cc:672
void dl_parVecReadExtVec(dl_parVec_t *pv, char *spectrum)
C-interface of parVector::ReadExtVec(std::string spectrum)
Definition: c-smg2s.cc:320
initMatrixL_t * newInitMatrixL_4(long diagl, long diagu, double Scale, double Sparsity)
C-interface of initMat::initMat(S diagl, S diagu, double Scale, double Sparsity)
Definition: c-smg2s.cc:116
parVecMapL_t * newParVecMapL_empty()
C-interfance of parVectorMap::parVectorMap()
Definition: c-smg2s.cc:152
void ds_parMatSparse_Show(ds_parMatSparse_t *pm)
C-interface of parMatrixSparse::show()
Definition: c-smg2s.cc:606
void initMatrix_destory(initMatrix_t *init)
Destory a initMatrix struct.
Definition: c-smg2s.cc:102
void dl_parVecSetVal(dl_parVec_t *pv, long index, double val)
C-interface of parVector::SetValueGlobal(S index, T value)
Definition: c-smg2s.cc:305
dl_parMatSparse_t * dl_nonsymmconj(long probSize, nilpL_t *nilp, initMatrixL_t *init, char *spectrum, MPI_Comm comm)
C-interface of function nonsymm (S probSize, Nilpotent< S > nilp, initMat< S > init,...
Definition: c-smg2s.cc:1097
long parVecMapLL2G(parVecMapL_t *pv, long local_index)
C-interfance of parVectorMap::Loc2Glob(S local_index)
Definition: c-smg2s.cc:162
initMatrixL_t * newInitMatrixL_3(long diagl, long diagu, double Sparsity)
C-interface of initMat::initMat(S diagl, S diagu, double Sparsity)
Definition: c-smg2s.cc:113
long zl_parVecGetGlobSize(zl_parVec_t *pv)
C-interface of parVector::GetGlobalSize()
Definition: c-smg2s.cc:461
nilpL_t * newNilpL_1(long nbOne, long size)
C-interface of Nilpotent::Nilpotent(S nbOne, S size)
Definition: c-smg2s.cc:57
void dl_parVecAdd(dl_parVec_t *pv, dl_parVec_t *pv2)
C-interface of parVector::VecAdd(parVector v)
Definition: c-smg2s.cc:311
struct initMatrixL initMatrixL_t
Creates a type name for initMatrix which is a C-interface for initMat with `S=long`.
Definition: c-smg2s.h:129
parVecMap_t * newParVecMap(MPI_Comm ncomm, int lbound, int ubound)
C-interfance of parVectorMap::parVectorMap(MPI_Comm ncomm, S lbound, S ubound)
Definition: c-smg2s.cc:130
double ds_parVecGetValLoc(ds_parVec_t *pv, int lindex)
C-interface of parVector::GetValueLocal(S lindex)
Definition: c-smg2s.cc:204
void initMatrix_show(initMatrix_t *init)
C-interface of initMat::show()
Definition: c-smg2s.cc:99
void zs_parMatSparse_destory(zs_parMatSparse_t *pm)
Destory the struct.
Definition: c-smg2s.cc:712
void dl_parMatSparse_destory(dl_parMatSparse_t *pm)
Destory the struct.
Definition: c-smg2s.cc:642
dl_parVec_t * new_dl_ParVec_1(MPI_Comm ncomm, long lbound, long ubound)
C-interface of parVector::parVector(MPI_Comm ncomm, S lbound, S ubound)
Definition: c-smg2s.cc:259
void zl_parVecAdd(zl_parVec_t *pv, zl_parVec_t *pv2)
C-interface of parVector::VecAdd(parVector v)
Definition: c-smg2s.cc:522
void ds_parVecSetValLoc(ds_parVec_t *pv, int lindex, double val)
C-interface of parVector::SetValueLocal(S row, T value)
Definition: c-smg2s.cc:228
long parVecMapLG2L(parVecMapL_t *pv, long global_index)
C-interfance of parVectorMap::Glob2Loc(S global_index)
Definition: c-smg2s.cc:165
int parVecMapG2L(parVecMap_t *pv, int global_index)
C-interfance of parVectorMap::Glob2Loc(S global_index)
Definition: c-smg2s.cc:139
void zs_parMatSparse_initMat(zs_parMatSparse_t *pm, int diagl, int diagu, double Scale, double Sparsity)
C-interface of parMatrixSparse::initMat(S diag_l, S diag_u, Base< T > scale, T shift,...
Definition: c-smg2s.cc:625
void parVecMap_destory(parVecMap_t *pv)
Destory a parVecMap struct.
Definition: c-smg2s.cc:148
void ds_parVecAdd(ds_parVec_t *pv, ds_parVec_t *pv2)
C-interface of parVector::VecAdd(parVector v)
Definition: c-smg2s.cc:231
double dl_parVecGetValLoc(dl_parVec_t *pv, long lindex)
C-interface of parVector::GetValueLocal(S lindex)
Definition: c-smg2s.cc:284
long dl_parVecGetUpperBound(dl_parVec_t *pv)
C-interface of parVector::GetUpperBound()
Definition: c-smg2s.cc:271
zs_parVec_t * new_zs_ParVec_1(MPI_Comm ncomm, int lbound, int ubound)
C-interface of parVector::parVector(MPI_Comm ncomm, S lbound, S ubound)
Definition: c-smg2s.cc:339
ds_parMatSparse_t * ds_nonsymm_2(int probSize, nilp_t *nilp, initMatrix_t *init, ds_parVec_t *spec)
C-interface of function nonsymm (S probSize, Nilpotent< S > nilp, initMat< S > init,...
Definition: c-smg2s.cc:1031
void dl_parVecScale(dl_parVec_t *pv, double scale)
C-interface of parVector::VecScale(T scale)
Definition: c-smg2s.cc:314
dcomplex_t zl_parVecGetVal(zl_parVec_t *pv, long index)
C-interface of parVector::GetValue(S index)
Definition: c-smg2s.cc:464
void dl_parMatSparse_SetValLocal(dl_parMatSparse_t *pm, long row, long col, double val)
C-interface of parMatrixSparse::SetValueLocal(S row, S col, T value)
Definition: c-smg2s.cc:663
MPI_Comm parVecMapGetComm(parVecMap_t *pv)
C-interfance of parVectorMap::GetCurrentComm()
Definition: c-smg2s.cc:133
int zs_parMatSparse_GetNRows(zs_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetNRows()
Definition: c-smg2s.cc:715
void zs_parVecScale(zs_parVec_t *pv, dcomplex_t scale)
C-interface of parVector::VecScale(T scale)
Definition: c-smg2s.cc:421
void zl_parVecSetValLoc(zl_parVec_t *pv, long lindex, dcomplex_t val)
C-interface of parVector::SetValueLocal(S row, T value)
Definition: c-smg2s.cc:518
void dl_writeToTxt(dl_parVec_t *pv, char *spectrum)
C-interface of parVector::writeToTxt (std::string file_name)
Definition: c-smg2s.cc:325
struct initMatrix initMatrix_t
Creates a type name for initMatrix which is a C-interface for initMat with `S=int`.
Definition: c-smg2s.h:112
void ds_parVecView(ds_parVec_t *pv)
C-interface of parVector::VecView()
Definition: c-smg2s.cc:222
struct zs_parVec zs_parVec_t
Creates a type name for zs_parVec which is a C-interface for parVector with `T=std::complex<double>` ...
Definition: c-smg2s.h:293
int zs_parVecGetLowerBound(zs_parVec_t *pv)
C-interface of parVector::GetLowerBound()
Definition: c-smg2s.cc:348
void nilp_show(nilp_t *nilp)
C-interface of Nilpotent::show.
Definition: c-smg2s.cc:46
double dl_parVecDot(dl_parVec_t *pv, dl_parVec_t *pv2)
C-interface of parVector::VecDot(parVector v)
Definition: c-smg2s.cc:317
double ds_parVecGetVal(ds_parVec_t *pv, int index)
C-interface of parVector::GetValue(S index)
Definition: c-smg2s.cc:201
void zl_parVecSetVal(zl_parVec_t *pv, long index, dcomplex_t val)
C-interface of parVector::SetValueGlobal(S index, T value)
Definition: c-smg2s.cc:514
long zl_parMatSparse_GetNCols(zl_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetNCols()
Definition: c-smg2s.cc:794
void zl_parMatSparse_AddVal(zl_parMatSparse_t *pm, long row, long col, dcomplex_t val)
C-interface of parMatrixSparse::AddValue(S row, S col, T value)
Definition: c-smg2s.cc:821
int zs_parVecGetUpperBound(zs_parVec_t *pv)
C-interface of parVector::GetUpperBound()
Definition: c-smg2s.cc:351
ds_parVec_t * ds_specNonSymmLoad(parVecMap_t *map, char *spectrum)
C-interface of function specNonSymm(parVectorMap<S> index_map, std::string spectrum)
Definition: c-smg2s.cc:880
void dl_parMatSparse_toCSRArray(dl_parMatSparse_t *pm, long *nrows, long *nnz, long **roffs, long **cols, double **val)
convert a parMatrixSparse matrix into CSR format
Definition: c-smg2s.cc:681
zl_parMatSparse_t * zl_nonherm(long probSize, nilpL_t *nilp, initMatrixL_t *init, char *spectrum, MPI_Comm comm)
C-interface of function nonherm (S probSize, Nilpotent< S > nilp, initMat< S > init,...
Definition: c-smg2s.cc:917
parVecMapL_t * dl_parVecGetMap(dl_parVec_t *pv)
C-interface of parVector::GetVecMap()
Definition: c-smg2s.cc:329
ds_parMatSparse_t * ds_nonsymmconj_2(int probSize, nilp_t *nilp, initMatrix_t *init, zs_parVec_t *spec)
C-interface of function nonsymmconj (S probSize, Nilpotent< S > nilp, initMat< S > init,...
Definition: c-smg2s.cc:1121
void zs_parMatSparse_View(zs_parMatSparse_t *pm)
C-interface of parMatrixSparse::MatView()
Definition: c-smg2s.cc:774
void zl_parMatSparse_destory(zl_parMatSparse_t *pm)
Destory the struct.
Definition: c-smg2s.cc:788
MPI_Comm dl_parMatSparse_GetComm(dl_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetComm()
Definition: c-smg2s.cc:660
dl_parMatSparse_t * dl_nonsymmconj_2(long probSize, nilpL_t *nilp, initMatrixL_t *init, zl_parVec_t *spec)
C-interface of function nonsymmconj (S probSize, Nilpotent< S > nilp, initMat< S > init,...
Definition: c-smg2s.cc:1135
void zl_nonherm_3(long probSize, nilpL_t *nilp, zl_parMatSparse_t *Am, zl_parVec_t *spec)
C-interface of function nonherm (S probSize, Nilpotent< S > nilp, parMatrixSparse< T,...
Definition: c-smg2s.cc:974
void dl_parVecView(dl_parVec_t *pv)
C-interface of parVector::VecView()
Definition: c-smg2s.cc:302
void zl_parMatSparse_View(zl_parMatSparse_t *pm)
C-interface of parMatrixSparse::MatView()
Definition: c-smg2s.cc:850
double real
Definition: c-smg2s.h:53
void dl_parMatSparse_View(dl_parMatSparse_t *pm)
C-interface of parMatrixSparse::MatView()
Definition: c-smg2s.cc:697
struct nilpL nilpL_t
Creates a type name for nilp which is a C-interface for Nilpotent with `S=long`.
Definition: c-smg2s.h:89
MPI_Comm zl_parMatSparse_GetComm(zl_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetComm()
Definition: c-smg2s.cc:806
double * ds_parVecGetArray(ds_parVec_t *pv)
C-interface of parVector::GetArray()
Definition: c-smg2s.cc:207
void ds_parMatSparse_AddValLocal(ds_parMatSparse_t *pm, int row, int col, double val)
C-interface of parMatrixSparse::AddValueLocal(S row, S col, T value)
Definition: c-smg2s.cc:581
long zl_parMatSparse_GetNRows(zl_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetNRows()
Definition: c-smg2s.cc:791
ds_parMatSparse_t * new_ds_ParMatSparse_2(parVecMap_t *map)
C-interface of parMatrixSparse::parMatrixSparse(parVectorMap< S > map)
Definition: c-smg2s.cc:551
zl_parVec_t * new_zl_ParVec_1(MPI_Comm ncomm, long lbound, long ubound)
C-interface of parVector::parVector(MPI_Comm ncomm, S lbound, S ubound)
Definition: c-smg2s.cc:442
nilp_t * newNilp_2(int nbOne, int diag, int size)
C-interface of Nilpotent::Nilpotent(S nbOne, S diag, S size)
Definition: c-smg2s.cc:32
void ds_parMatSparse_Wrt2MM(ds_parMatSparse_t *pm, char *file_name)
C-interface of parMatrixSparse::writeToMatrixMarket(std::string file_name)
Definition: c-smg2s.cc:612
int ds_parMatSparse_GetUpperBound(ds_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetUpperBound()
Definition: c-smg2s.cc:569
int ds_parVecGetLowerBound(ds_parVec_t *pv)
C-interface of parVector::GetLowerBound()
Definition: c-smg2s.cc:188
void zs_parVecSetValLoc(zs_parVec_t *pv, int lindex, dcomplex_t val)
C-interface of parVector::SetValueLocal(S row, T value)
Definition: c-smg2s.cc:414
void nilpL_show(nilpL_t *nilp)
C-interface of Nilpotent::show.
Definition: c-smg2s.cc:80
int parVecMapGetGlobSize(parVecMap_t *pv)
C-interfance of parVectorMap::GetGlobalSize()
Definition: c-smg2s.cc:145
void parVecMapL_destory(parVecMapL_t *pv)
Destory a parVecMapL struct.
Definition: c-smg2s.cc:174
dcomplex_t zs_parVecGetVal(zs_parVec_t *pv, int index)
C-interface of parVector::GetValue(S index)
Definition: c-smg2s.cc:361
dcomplex_t zs_parVecGetValLoc(zs_parVec_t *pv, int lindex)
C-interface of parVector::GetValueLocal(S lindex)
Definition: c-smg2s.cc:368
MPI_Comm parVecMapLGetComm(parVecMapL_t *pv)
C-interfance of parVectorMap::GetCurrentComm()
Definition: c-smg2s.cc:159
zl_parVec_t * new_zl_ParVec_2(parVecMapL_t *map)
C-interface of parVector::parVector(parVectorMap<S> map)
Definition: c-smg2s.cc:445
void zs_parVec_destory(zs_parVec_t *pv)
Destory the struct.
Definition: c-smg2s.cc:345
nilp_t * newNilp_1(int nbOne, int size)
C-interface of Nilpotent::Nilpotent(S nbOne, S size)
Definition: c-smg2s.cc:29
void zl_parMatSparse_Wrt2MMCmplx(zl_parMatSparse_t *pm, char *file_name)
C-interface of parMatrixSparse::writeToMatrixMarketCmplx(std::string file_name)
Definition: c-smg2s.cc:853
int ds_parMatSparse_GetNRows(ds_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetNRows()
Definition: c-smg2s.cc:557
int zs_parMatSparse_GetUpperBound(zs_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetUpperBound()
Definition: c-smg2s.cc:727
int ds_parMatSparse_GetLowerBound(ds_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetLowerBound()
Definition: c-smg2s.cc:566
double dl_parVecGetVal(dl_parVec_t *pv, long index)
C-interface of parVector::GetValue(S index)
Definition: c-smg2s.cc:281
nilpL_t * newNilpL_2(long nbOne, long diag, long size)
C-interface of Nilpotent::Nilpotent(S nbOne, S diag, S size)
Definition: c-smg2s.cc:60
void zs_parMatSparse_SetValLocal(zs_parMatSparse_t *pm, int row, int col, dcomplex_t val)
C-interface of parMatrixSparse::SetValueLocal(S row, S col, T value)
Definition: c-smg2s.cc:733
ds_parVec_t * new_ds_ParVec_2(parVecMap_t *map)
C-interface of parVector::parVector(parVectorMap<S> map)
Definition: c-smg2s.cc:182
long zl_parVecL2G(zl_parVec_t *pv, long local_index)
C-interface of parVector::Loc2Glob(S local_index)
Definition: c-smg2s.cc:501
struct dl_parVec dl_parVec_t
Creates a type name for dl_parVec which is a C-interface for parVector with `T=double` and `S=long`.
Definition: c-smg2s.h:241
ds_parMatSparse_t * ds_nonsymm(int probSize, nilp_t *nilp, initMatrix_t *init, char *spectrum, MPI_Comm comm)
C-interface of function nonsymm (S probSize, Nilpotent< S > nilp, initMat< S > init,...
Definition: c-smg2s.cc:983
initMatrixL_t * newInitMatrixL_2(long diagl, long diagu)
C-interface of initMat::initMat(S diagl, S diagu)
Definition: c-smg2s.cc:110
void dl_parVecSetValLoc(dl_parVec_t *pv, long lindex, double val)
C-interface of parVector::SetValueLocal(S row, T value)
Definition: c-smg2s.cc:308
void zs_parMatSparse_Show(zs_parMatSparse_t *pm)
C-interface of parMatrixSparse::show()
Definition: c-smg2s.cc:771
void zs_parVecView(zs_parVec_t *pv)
C-interface of parVector::VecView()
Definition: c-smg2s.cc:407
int * nilp_getIndOfZeros(nilp_t *nilp)
C-interface of Nilpotent::getIndOfZeros.
Definition: c-smg2s.cc:52
MPI_Comm dl_parVecGetComm(dl_parVec_t *pv)
C-interface of parVector::GetComm()
Definition: c-smg2s.cc:290
void zs_parMatSparse_SetVal(zs_parMatSparse_t *pm, int row, int col, dcomplex_t val)
C-interface of parMatrixSparse::SetValue (S row, S col, T value)
Definition: c-smg2s.cc:737
dl_parVec_t * dl_specNonSymmLoad(parVecMapL_t *map, char *spectrum)
C-interface of function specNonSymm(parVectorMap<S> index_map, std::string spectrum)
Definition: c-smg2s.cc:885
nilpL_t * newNilpL_3(long *nilpvec, long size)
C-interface of Nilpotent::Nilpotent(std::vector<S> nilpvec, S size)
Definition: c-smg2s.cc:63
zs_parVec_t * new_zs_ParVec_2(parVecMap_t *map)
C-interface of parVector::parVector(parVectorMap<S> map)
Definition: c-smg2s.cc:342
void zs_parVecAdd(zs_parVec_t *pv, zs_parVec_t *pv2)
C-interface of parVector::VecAdd(parVector v)
Definition: c-smg2s.cc:418
A struct determines a complex number with double precision.
Definition: c-smg2s.h:51
void zs_parMatSparse_Wrt2MMCmplx(zs_parMatSparse_t *pm, char *file_name)
C-interface of parMatrixSparse::writeToMatrixMarketCmplx(std::string file_name)
Definition: c-smg2s.cc:777
nilp_t * newNilp_3(int *nilpvec, int size)
C-interface of Nilpotent::Nilpotent(std::vector<S> nilpvec, S size)
Definition: c-smg2s.cc:35
void zl_writeToTxtCmplx(zl_parVec_t *pv, char *spectrum)
C-interface of parVector::writeToCmplx(std::string file_name)
Definition: c-smg2s.cc:540
struct zs_parMatSparse zs_parMatSparse_t
Creates a type name for zs_parMatSparse which is a C-interface for parMatrixSparse with `T=std::compl...
Definition: c-smg2s.h:509
int zs_parVecL2G(zs_parVec_t *pv, int local_index)
C-interface of parVector::Loc2Glob(S local_index)
Definition: c-smg2s.cc:397
void zl_parMatSparse_SetValLocal(zl_parMatSparse_t *pm, long row, long col, dcomplex_t val)
C-interface of parMatrixSparse::SetValueLocal(S row, S col, T value)
Definition: c-smg2s.cc:809
void ds_parVecReadExtVec(ds_parVec_t *pv, char *spectrum)
C-interface of parVector::ReadExtVec(std::string spectrum)
Definition: c-smg2s.cc:240
dl_parMatSparse_t * dl_nonsymm_2(long probSize, nilpL_t *nilp, initMatrixL_t *init, dl_parVec_t *spec)
C-interface of function nonsymm (S probSize, Nilpotent< S > nilp, initMat< S > init,...
Definition: c-smg2s.cc:1044
struct ds_parVec ds_parVec_t
Creates a type name for ds_parVec which is a C-interface for parVector with `T=double` and `S=int`.
Definition: c-smg2s.h:190
void ds_parMatSparse_SetVal(ds_parMatSparse_t *pm, int row, int col, double val)
C-interface of parMatrixSparse::SetValue (S row, S col, T value)
Definition: c-smg2s.cc:578
long dl_parVecGetGlobSize(dl_parVec_t *pv)
C-interface of parVector::GetGlobalSize()
Definition: c-smg2s.cc:278
zs_parVec_t * zs_specNonHermLoad(parVecMap_t *map, char *spectrum)
C-interface of function specNonHerm(parVectorMap<S> index_map, std::string spectrum)
Definition: c-smg2s.cc:858
dcomplex_t zl_parVecGetValLoc(zl_parVec_t *pv, long lindex)
C-interface of parVector::GetValueLocal(S lindex)
Definition: c-smg2s.cc:471
zl_parMatSparse_t * zl_nonherm_2(long probSize, nilpL_t *nilp, initMatrixL_t *init, zl_parVec_t *spec)
C-interface of function nonherm (S probSize, Nilpotent< S > nilp, initMat< S > init,...
Definition: c-smg2s.cc:953
void dl_parMatSparse_AddValLocal(dl_parMatSparse_t *pm, long row, long col, double val)
C-interface of parMatrixSparse::AddValueLocal(S row, S col, T value)
Definition: c-smg2s.cc:669
double ds_parMatSparse_GetValLocal(ds_parMatSparse_t *pm, int row, int col)
C-interface of parMatrixSparse::GetValueLocal (S row, S col)
Definition: c-smg2s.cc:587
initMatrix_t * newInitMatrix_3(int diagl, int diagu, double Sparsity)
C-interface of initMat::initMat(S diagl, S diagu, double Sparsity)
Definition: c-smg2s.cc:93
zs_parMatSparse_t * new_zs_ParMatSparse_2(parVecMapL_t *map)
C-interface of parMatrixSparse::parMatrixSparse(parVectorMap< S > map)
void zl_parMatSparse_Show(zl_parMatSparse_t *pm)
C-interface of parMatrixSparse::show()
Definition: c-smg2s.cc:847
struct zl_parMatSparse zl_parMatSparse_t
Creates a type name for zl_parMatSparse which is a C-interface for parMatrixSparse with `T=std::compl...
Definition: c-smg2s.h:562
long zl_parMatSparse_GetUpperBound(zl_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetUpperBound()
Definition: c-smg2s.cc:803
zl_parVec_t * zl_specNonHermLoad(parVecMapL_t *map, char *spectrum)
C-interface of function specNonHerm(parVectorMap<S> index_map, std::string spectrum)
Definition: c-smg2s.cc:863
long dl_parMatSparse_GetNNzLoc(dl_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetNnzLoc()
Definition: c-smg2s.cc:651
zs_parMatSparse_t * zs_nonherm(int probSize, nilp_t *nilp, initMatrix_t *init, char *spectrum, MPI_Comm comm)
C-interface of function nonherm (S probSize, Nilpotent< S > nilp, initMat< S > init,...
Definition: c-smg2s.cc:893
int ds_parVecGetLocSize(ds_parVec_t *pv)
C-interface of parVector::GetLocalSize()
Definition: c-smg2s.cc:195
long dl_parMatSparse_GetNCols(dl_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetNCols()
Definition: c-smg2s.cc:648
double ds_parMatSparse_GetVal(ds_parMatSparse_t *pm, int row, int col)
C-interface of parMatrixSparse::GetValue (S row, S col)
Definition: c-smg2s.cc:590
int zs_parVecG2L(zs_parVec_t *pv, int global_index)
C-interface of parVector::Glob2Loc(S global_index)
Definition: c-smg2s.cc:400
MPI_Comm ds_parMatSparse_GetComm(ds_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetComm()
Definition: c-smg2s.cc:572
long * nilpL_getIndOfZeros(nilpL_t *nilp)
C-interface of Nilpotent::getIndOfZeros.
Definition: c-smg2s.cc:77
ds_parVec_t * new_ds_ParVec_1(MPI_Comm ncomm, int lbound, int ubound)
C-interface of parVector::parVector(MPI_Comm ncomm, S lbound, S ubound)
Definition: c-smg2s.cc:179
void zl_parVecView(zl_parVec_t *pv)
C-interface of parVector::VecView()
Definition: c-smg2s.cc:511
void zs_parMatSparse_toCSRArray(zs_parMatSparse_t *pm, int *nrows, int *nnz, int **roffs, int **cols, dcomplex_t **val)
convert a parMatrixSparse matrix into CSR format
Definition: c-smg2s.cc:757
void zs_parMatSparse_AddVal(zs_parMatSparse_t *pm, int row, int col, dcomplex_t val)
C-interface of parMatrixSparse::AddValue(S row, S col, T value)
Definition: c-smg2s.cc:745
void zl_parVec_destory(zl_parVec_t *pv)
Destory the struct.
Definition: c-smg2s.cc:448
initMatrix_t * newInitMatrix_2(int diagl, int diagu)
C-interface of initMat::initMat(S diagl, S diagu)
Definition: c-smg2s.cc:90
int zs_parMatSparse_GetNCols(zs_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetNCols()
Definition: c-smg2s.cc:718
dcomplex_t * zl_parVecGetArray(zl_parVec_t *pv)
C-interface of parVector::GetArray()
Definition: c-smg2s.cc:478
dcomplex_t zs_parMatSparse_GetValLocal(zs_parMatSparse_t *pm, int row, int col)
C-interface of parMatrixSparse::GetValueLocal (S row, S col)
Definition: c-smg2s.cc:749
int nilp_getDegree(nilp_t *nilp)
C-interface of Nilpotent::getDegree.
Definition: c-smg2s.cc:49
dcomplex_t zs_parVecDot(zs_parVec_t *pv, zs_parVec_t *pv2)
C-interface of parVector::VecDot(parVector v)
Definition: c-smg2s.cc:425
long zl_parMatSparse_GetNNzLoc(zl_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetNnzLoc()
Definition: c-smg2s.cc:797
void zs_parVecReadExtVec(zs_parVec_t *pv, char *spectrum)
C-interface of parVector::ReadExtVec(std::string spectrum)
Definition: c-smg2s.cc:432
struct ds_parMatSparse ds_parMatSparse_t
Creates a type name for ds_parMatSparse which is a C-interface for parMatrixSparse with `T=double` an...
Definition: c-smg2s.h:402
long zl_parVecGetLocSize(zl_parVec_t *pv)
C-interface of parVector::GetLocalSize()
Definition: c-smg2s.cc:458
double * dl_parVecGetArray(dl_parVec_t *pv)
C-interface of parVector::GetArray()
Definition: c-smg2s.cc:287
dcomplex_t zs_parMatSparse_GetVal(zs_parMatSparse_t *pm, int row, int col)
C-interface of parMatrixSparse::GetValue (S row, S col)
Definition: c-smg2s.cc:753
void nilp_destory(nilp_t *nilp)
Destory a nilp struct.
Definition: c-smg2s.cc:43
void ds_parMatSparse_toCSRArray(ds_parMatSparse_t *pm, int *nrows, int *nnz, int **roffs, int **cols, double **val)
convert a parMatrixSparse matrix into CSR format
Definition: c-smg2s.cc:593
void dl_parMatSparse_initMat(dl_parMatSparse_t *pm, long diagl, long diagu, double Scale, double Sparsity)
C-interface of parMatrixSparse::initMat(S diag_l, S diag_u, Base< T > scale, T shift,...
Definition: c-smg2s.cc:619
dl_parMatSparse_t * new_dl_ParMatSparse_1(dl_parVec_t *pv)
C-interface of parMatrixSparse::parMatrixSparse(parVector< T, S > vec)
Definition: c-smg2s.cc:636
void zl_parVecReadExtVec(zl_parVec_t *pv, char *spectrum)
C-interface of parVector::ReadExtVec(std::string spectrum)
Definition: c-smg2s.cc:536
MPI_Comm zs_parMatSparse_GetComm(zs_parMatSparse_t *pm)
C-interface of parMatrixSparse::GetComm()
Definition: c-smg2s.cc:730