Commit Graph

123 Commits (development)

Author SHA1 Message Date
Salvatore Filippone 3e318e1a84 Initialize INFO
Cirdans-Home 9a2ea73d81 psb_dnrm2_weight working also for GPUs
Cirdans-Home 73605bdda0 Bugfix weighted norm FIXME for GPU
Salvatore Filippone c414d4d40a Merge branch 'implement-ainv' into dev-openmp
# Conflicts:
#	base/comm/internals/psi_cswapdata_a.F90
#	base/comm/internals/psi_cswaptran_a.F90
#	base/comm/internals/psi_dswapdata_a.F90
#	base/comm/internals/psi_dswaptran_a.F90
#	base/comm/internals/psi_eswapdata_a.F90
#	base/comm/internals/psi_eswaptran_a.F90
#	base/comm/internals/psi_i2swapdata_a.F90
#	base/comm/internals/psi_i2swaptran_a.F90
#	base/comm/internals/psi_mswapdata_a.F90
#	base/comm/internals/psi_mswaptran_a.F90
#	base/comm/internals/psi_sswapdata_a.F90
#	base/comm/internals/psi_sswaptran_a.F90
#	base/comm/internals/psi_zswapdata_a.F90
#	base/comm/internals/psi_zswaptran_a.F90
#	base/modules/psi_i_mod.F90
Cirdans-Home fbf23c3959 Added implementation in BJAC and test for ILU-type factorizations
Cirdans-Home 8d2ab75737 Added interfaces for all types of psb_nspaxpby
Salvatore Filippone eb513e45c6 OpenMP for base_vect
Salvatore Filippone 069c49f20f Rename base_vect to F90
Cirdans-Home 624a07a25b Added getelem function to retrieve entries from distributed vectors
Salvatore Filippone 7436cf564c Start cleanup compile warnings
Salvatore Filippone d865bb91ca Defined new variant of allocate_mnnz for mixed IPK/LPK
Cirdans-Home 6777e57d37 merge with merge-paraggr-newops
Cirdans-Home c0ccbe14f7 merge with unify_agg_build
Salvatore Filippone f499ffb203 New clear_defaults function, use it in psb_exit
Cirdans-Home 5c34e3d853 Removed orphan implementation for scale plus identity
Cirdans-Home 01f4f718de Corrected implementation of scale plus identity for sparse matrices
Cirdans-Home 1c23654328 Added functions to compare the entries of two matrices or every entry of matrix with a value
Cirdans-Home 3b36c2196b Added implementation of A = alpha A + beta B for sparse matrices
Cirdans-Home dc55713541 Added generic interface psb_scalplusidentity for long integer spmat
Cirdans-Home e108416719 Added function for scaled sparse matrix plus identity
Cirdans-Home 0f309850cc Corrected routine for weighted masked 2norm
Cirdans-Home 9e9a2e3975 Corrected implementation of @X@_base_inv_a2_check to be compliant with NVECTOR behavior
Cirdans-Home 5504e34161 Removed the out-interface for vector scaling
Cirdans-Home 28c1efe650 Corrected pass argument in div routines
Cirdans-Home 44f05510bc Added out-of-place axpby and relative c interface
Cirdans-Home 8bf0ff673b Added psb_minquotient function with C interface
Cirdans-Home fd89f2f1bf Added psb_gescal subroutine to entrywise scale distributed vector with C interface
Cirdans-Home ea9c469159 Added psb_geaddconst subroutine to add constant value to vector with C-interfaces
Cirdans-Home 439246e643 Added out-of-place entrywise division with C interfaces
Cirdans-Home 0edb671d21 Added minimum of realtype distributed vectors
Cirdans-Home b8ab997bc1 Added generation of mask vector for constraint tests psb_mask
Cirdans-Home e59932e496 chagend name to acmp for the compare routines
Cirdans-Home 87306f4d1a added weighted and masked 2 norm, and compare on complex vector
Cirdans-Home 1b214f3f00 added weighted 2-norm function
Cirdans-Home 63885c36c7 psb_geabs corrected version with test
Cirdans-Home f5709a2254 Added psb_geabs, final output not working
Salvatore Filippone 01ffca76d2 Change mat%print interface, and refactor.
Salvatore Filippone 936ef49e7d Further changes for ambiguous interfaces when IPK==LPK
Salvatore Filippone 487fa54f06 Define coo%ensure_size method
Salvatore Filippone e2653b1c60 New clip "in place" method
Salvatore Filippone cea69503a4 New method for cleaning entries with negative indices in COO.
cirdans-home fcbe0d620a Added vector/scalar comparison routine
cirdans-home c1f3b2d9d4 Added entrywise inversion and documentation for vec-vec operation
cirdans-home db7b882e9c entrywise divide with zero check
cirdans-home ce6383b7ff Added Element-by-Element divison
Salvatore Filippone c338e7b799 New LPK set_nzeros for COO
Salvatore Filippone 319d2831b7 New methods for LX%set_nrows with IPK/LPK
Salvatore Filippone 634c2e0aa5 Implement clip_diag for LX
Salvatore Filippone 22d76d1e48 Fix SYM handling at spmat level.
Salvatore Filippone 7e2ffbf34d New handling of SYMmetry
Salvatore Filippone 51e50120bd Add move_alloc method to sparse matrix.
Salvatore Filippone e5535835ec Implement clean_zeros for CSC and CSR
Salvatore Filippone 6dda7339b5 Restore mistakenly deleted sources.
Salvatore Filippone 638f777322 Fix SPMAT take out LX_icsget; in search of a better solution.
Salvatore Filippone cd8ae65c85 Take out GTL arg from CSPUT.
Salvatore Filippone 8d489f8ce2 Merged MixedI8 in new branch (to be later merged into development)
Salvatore Filippone 9488a91d48 Fix implicit none.
Salvatore Filippone 1a5ee8c46a Fix bounds computation in set_vect. Bug report by Alexandre Silva Lopes
Salvatore Filippone e5ed49a018 Add N to get_vect.
Salvatore Filippone 6c6d2c71ee Optional argument in GETROW.
Salvatore Filippone 42d5a85e25 Implement TRIL/TRIU for CSR.
Salvatore Filippone 95009f7ad5 Lifted interface to symbmm into psb_serial_mod.
Updated printouts in test programs.
Salvatore Filippone e37b43d45a Take out HAVE_MOLD.
Make support for MOLD mandatory in compiler version.
Define set_vect_defaults() and set_mat_defaults(), invoke them at
_init() time.
Salvatore Filippone 3d347d31dc Ensure that the CNV method pick up the default storage format.
Populate the defaults at psb_init time.
Salvatore Filippone d63202590d Fixed silly bug in declaration of NRM2 and DOT.
Salvatore Filippone c774783057 Updated copyright statement
Salvatore Filippone 7218ae86d6 Added new optional arguments to TRIL and TRIU. Document same.
Salvatore Filippone de8daf2631 psblas3:
base/modules/serial/psb_c_base_vect_mod.f90
 base/modules/serial/psb_d_base_vect_mod.f90
 base/modules/serial/psb_i_base_vect_mod.f90
 base/modules/serial/psb_s_base_vect_mod.f90
 base/modules/serial/psb_z_base_vect_mod.f90

Comments in base vector class.
Salvatore Filippone de0596d677 psblas3:
New affiliation and fix compyright formatting.
Salvatore Filippone de68ae1d64 psblas3:
Modified copyright format for all Fortran file.
Salvatore Filippone 0329ffd968 psblas3:
base/comm/internals/psi_cswapdata.F90
 base/comm/internals/psi_cswaptran.F90
 base/comm/internals/psi_dswapdata.F90
 base/comm/internals/psi_dswaptran.F90
 base/comm/internals/psi_iswapdata.F90
 base/comm/internals/psi_iswaptran.F90
 base/comm/internals/psi_sswapdata.F90
 base/comm/internals/psi_sswaptran.F90
 base/comm/internals/psi_zswapdata.F90
 base/comm/internals/psi_zswaptran.F90
 base/modules/psb_realloc_mod.F90
 base/modules/serial/psb_c_base_vect_mod.f90
 base/modules/serial/psb_d_base_vect_mod.f90
 base/modules/serial/psb_i_base_vect_mod.f90
 base/modules/serial/psb_s_base_vect_mod.f90
 base/modules/serial/psb_z_base_vect_mod.f90

Introduce v%maybe_free_buffer.
Salvatore Filippone 9c4055f45c psblas3:
base/comm/internals/psi_cswapdata.F90
 base/comm/internals/psi_cswaptran.F90
 base/comm/internals/psi_dswapdata.F90
 base/comm/internals/psi_dswaptran.F90
 base/comm/internals/psi_iswapdata.F90
 base/comm/internals/psi_iswaptran.F90
 base/comm/internals/psi_sswapdata.F90
 base/comm/internals/psi_sswaptran.F90
 base/comm/internals/psi_zswapdata.F90
 base/comm/internals/psi_zswaptran.F90
 base/comm/psb_cgather.f90
 base/comm/psb_chalo.f90
 base/comm/psb_covrl.f90
 base/comm/psb_cscatter.F90
 base/comm/psb_cspgather.F90
 base/comm/psb_dgather.f90
 base/comm/psb_dhalo.f90
 base/comm/psb_dovrl.f90
 base/comm/psb_dscatter.F90
 base/comm/psb_dspgather.F90
 base/comm/psb_igather.f90
 base/comm/psb_ihalo.f90
 base/comm/psb_iovrl.f90
 base/comm/psb_iscatter.F90
 base/comm/psb_sgather.f90
 base/comm/psb_shalo.f90
 base/comm/psb_sovrl.f90
 base/comm/psb_sscatter.F90
 base/comm/psb_sspgather.F90
 base/comm/psb_zgather.f90
 base/comm/psb_zhalo.f90
 base/comm/psb_zovrl.f90
 base/comm/psb_zscatter.F90
 base/comm/psb_zspgather.F90
 base/modules/desc/psb_hash_map_mod.f90
 base/modules/psb_error_impl.F90
 base/modules/psb_error_mod.F90
 base/modules/psb_realloc_mod.F90
 base/modules/serial/psb_c_base_vect_mod.f90
 base/modules/serial/psb_c_vect_mod.F90
 base/modules/serial/psb_d_base_vect_mod.f90
 base/modules/serial/psb_d_vect_mod.F90
 base/modules/serial/psb_i_base_vect_mod.f90
 base/modules/serial/psb_s_base_vect_mod.f90
 base/modules/serial/psb_s_vect_mod.F90
 base/modules/serial/psb_z_base_vect_mod.f90
 base/modules/serial/psb_z_vect_mod.F90
 base/tools/psb_ccdbldext.F90
 base/tools/psb_dcdbldext.F90
 base/tools/psb_icdasb.F90
 base/tools/psb_scdbldext.F90
 base/tools/psb_zcdbldext.F90
 krylov/psb_dcg.F90
 krylov/psb_scg.F90

Fixes for --enable-long-integers. Now compiles and runs correctly.
Salvatore Filippone c3813ad217 psblas3:
base/modules/Makefile
 base/modules/aux
 base/modules/aux/psb_c_sort_mod.f90
 base/modules/aux/psb_d_sort_mod.f90
 base/modules/aux/psb_hash_mod.f90
 base/modules/aux/psb_i_sort_mod.f90
 base/modules/aux/psb_ip_reord_mod.f90
 base/modules/aux/psb_s_sort_mod.f90
 base/modules/aux/psb_sort_mod.f90
 base/modules/aux/psb_string_mod.f90
 base/modules/aux/psb_z_sort_mod.f90
 base/modules/aux/psi_c_serial_mod.f90
 base/modules/aux/psi_d_serial_mod.f90
 base/modules/aux/psi_i_serial_mod.f90
 base/modules/aux/psi_s_serial_mod.f90
 base/modules/aux/psi_serial_mod.f90
 base/modules/aux/psi_z_serial_mod.f90
 base/modules/comm
 base/modules/comm/psb_base_linmap_mod.f90
 base/modules/comm/psb_c_comm_mod.f90
 base/modules/comm/psb_c_linmap_mod.f90
 base/modules/comm/psb_comm_mod.f90
 base/modules/comm/psb_d_comm_mod.f90
 base/modules/comm/psb_d_linmap_mod.f90
 base/modules/comm/psb_i_comm_mod.f90
 base/modules/comm/psb_linmap_mod.f90
 base/modules/comm/psb_s_comm_mod.f90
 base/modules/comm/psb_s_linmap_mod.f90
 base/modules/comm/psb_z_comm_mod.f90
 base/modules/comm/psb_z_linmap_mod.f90
 base/modules/desc
 base/modules/desc/psb_desc_const_mod.f90
 base/modules/desc/psb_desc_mod.F90
 base/modules/desc/psb_gen_block_map_mod.f90
 base/modules/desc/psb_glist_map_mod.f90
 base/modules/desc/psb_hash_map_mod.f90
 base/modules/desc/psb_indx_map_mod.f90
 base/modules/desc/psb_list_map_mod.f90
 base/modules/desc/psb_repl_map_mod.f90
 base/modules/psb_base_linmap_mod.f90
 base/modules/psb_base_mat_mod.f90
 base/modules/psb_c_base_mat_mod.f90
 base/modules/psb_c_base_vect_mod.f90
 base/modules/psb_c_comm_mod.f90
 base/modules/psb_c_csc_mat_mod.f90
 base/modules/psb_c_csr_mat_mod.f90
 base/modules/psb_c_linmap_mod.f90
 base/modules/psb_c_mat_mod.f90
 base/modules/psb_c_psblas_mod.F90
 base/modules/psb_c_serial_mod.f90
 base/modules/psb_c_sort_mod.f90
 base/modules/psb_c_tools_mod.f90
 base/modules/psb_c_vect_mod.F90
 base/modules/psb_cd_tools_mod.f90
 base/modules/psb_comm_mod.f90
 base/modules/psb_d_base_mat_mod.f90
 base/modules/psb_d_base_vect_mod.f90
 base/modules/psb_d_comm_mod.f90
 base/modules/psb_d_csc_mat_mod.f90
 base/modules/psb_d_csr_mat_mod.f90
 base/modules/psb_d_linmap_mod.f90
 base/modules/psb_d_mat_mod.f90
 base/modules/psb_d_psblas_mod.F90
 base/modules/psb_d_serial_mod.f90
 base/modules/psb_d_sort_mod.f90
 base/modules/psb_d_tools_mod.f90
 base/modules/psb_d_vect_mod.F90
 base/modules/psb_desc_const_mod.f90
 base/modules/psb_desc_mod.F90
 base/modules/psb_gen_block_map_mod.f90
 base/modules/psb_glist_map_mod.f90
 base/modules/psb_hash_map_mod.f90
 base/modules/psb_hash_mod.f90
 base/modules/psb_i_base_vect_mod.f90
 base/modules/psb_i_comm_mod.f90
 base/modules/psb_i_sort_mod.f90
 base/modules/psb_i_tools_mod.f90
 base/modules/psb_i_vect_mod.F90
 base/modules/psb_indx_map_mod.f90
 base/modules/psb_ip_reord_mod.f90
 base/modules/psb_linmap_mod.f90
 base/modules/psb_list_map_mod.f90
 base/modules/psb_mat_mod.f90
 base/modules/psb_psblas_mod.f90
 base/modules/psb_repl_map_mod.f90
 base/modules/psb_s_base_mat_mod.f90
 base/modules/psb_s_base_vect_mod.f90
 base/modules/psb_s_comm_mod.f90
 base/modules/psb_s_csc_mat_mod.f90
 base/modules/psb_s_csr_mat_mod.f90
 base/modules/psb_s_linmap_mod.f90
 base/modules/psb_s_mat_mod.f90
 base/modules/psb_s_psblas_mod.F90
 base/modules/psb_s_serial_mod.f90
 base/modules/psb_s_sort_mod.f90
 base/modules/psb_s_tools_mod.f90
 base/modules/psb_s_vect_mod.F90
 base/modules/psb_serial_mod.f90
 base/modules/psb_sort_mod.f90
 base/modules/psb_sort_mod_save.f90
 base/modules/psb_string_mod.f90
 base/modules/psb_tools_mod.f90
 base/modules/psb_vect_mod.f90
 base/modules/psb_z_base_mat_mod.f90
 base/modules/psb_z_base_vect_mod.f90
 base/modules/psb_z_comm_mod.f90
 base/modules/psb_z_csc_mat_mod.f90
 base/modules/psb_z_csr_mat_mod.f90
 base/modules/psb_z_linmap_mod.f90
 base/modules/psb_z_mat_mod.f90
 base/modules/psb_z_psblas_mod.F90
 base/modules/psb_z_serial_mod.f90
 base/modules/psb_z_sort_mod.f90
 base/modules/psb_z_tools_mod.f90
 base/modules/psb_z_vect_mod.F90
 base/modules/psblas
 base/modules/psblas/psb_c_psblas_mod.F90
 base/modules/psblas/psb_d_psblas_mod.F90
 base/modules/psblas/psb_psblas_mod.f90
 base/modules/psblas/psb_s_psblas_mod.F90
 base/modules/psblas/psb_z_psblas_mod.F90
 base/modules/psi_c_serial_mod.f90
 base/modules/psi_d_serial_mod.f90
 base/modules/psi_i_serial_mod.f90
 base/modules/psi_s_serial_mod.f90
 base/modules/psi_serial_mod.f90
 base/modules/psi_z_serial_mod.f90
 base/modules/serial
 base/modules/serial/psb_base_mat_mod.f90
 base/modules/serial/psb_c_base_mat_mod.f90
 base/modules/serial/psb_c_base_vect_mod.f90
 base/modules/serial/psb_c_csc_mat_mod.f90
 base/modules/serial/psb_c_csr_mat_mod.f90
 base/modules/serial/psb_c_mat_mod.f90
 base/modules/serial/psb_c_serial_mod.f90
 base/modules/serial/psb_c_vect_mod.F90
 base/modules/serial/psb_d_base_mat_mod.f90
 base/modules/serial/psb_d_base_vect_mod.f90
 base/modules/serial/psb_d_csc_mat_mod.f90
 base/modules/serial/psb_d_csr_mat_mod.f90
 base/modules/serial/psb_d_mat_mod.f90
 base/modules/serial/psb_d_serial_mod.f90
 base/modules/serial/psb_d_vect_mod.F90
 base/modules/serial/psb_i_base_vect_mod.f90
 base/modules/serial/psb_i_vect_mod.F90
 base/modules/serial/psb_mat_mod.f90
 base/modules/serial/psb_s_base_mat_mod.f90
 base/modules/serial/psb_s_base_vect_mod.f90
 base/modules/serial/psb_s_csc_mat_mod.f90
 base/modules/serial/psb_s_csr_mat_mod.f90
 base/modules/serial/psb_s_mat_mod.f90
 base/modules/serial/psb_s_serial_mod.f90
 base/modules/serial/psb_s_vect_mod.F90
 base/modules/serial/psb_serial_mod.f90
 base/modules/serial/psb_vect_mod.f90
 base/modules/serial/psb_z_base_mat_mod.f90
 base/modules/serial/psb_z_base_vect_mod.f90
 base/modules/serial/psb_z_csc_mat_mod.f90
 base/modules/serial/psb_z_csr_mat_mod.f90
 base/modules/serial/psb_z_mat_mod.f90
 base/modules/serial/psb_z_serial_mod.f90
 base/modules/serial/psb_z_vect_mod.F90
 base/modules/tools
 base/modules/tools/psb_c_tools_mod.f90
 base/modules/tools/psb_cd_tools_mod.f90
 base/modules/tools/psb_d_tools_mod.f90
 base/modules/tools/psb_i_tools_mod.f90
 base/modules/tools/psb_s_tools_mod.f90
 base/modules/tools/psb_tools_mod.f90
 base/modules/tools/psb_z_tools_mod.f90
 configure.ac
 configure

Mreged reorganization of the base/modules subdir from newdesc branch.