Franck HOUSSEN
f2a747c98a
Use latest version of eigen.
2020-06-02 09:05:25 +02:00
Franck HOUSSEN
c89b848a20
Revert README.
2020-06-01 22:18:17 +02:00
Franck HOUSSEN
aa20bc5b8e
ILP64 : need to use docker. mkl can't be installed from bionic.
2020-06-01 22:11:39 +02:00
Franck HOUSSEN
fa8a1634a0
update needed to get mkl ?
2020-06-01 20:49:45 +02:00
Franck HOUSSEN
caaac63f3d
cov build break : no idea why - return to xenial ?...
2020-06-01 18:50:17 +02:00
Franck HOUSSEN
6952afef4f
cd $TRAVIS_BUILD_DIR
2020-06-01 13:11:28 +02:00
Franck HOUSSEN
1a1371a166
Testing if ilp build can be achieved easily now on bionic with cmake.
2020-06-01 11:47:52 +02:00
Franck HOUSSEN
a38b411291
move fedora up as it's tested first.
2020-06-01 11:27:37 +02:00
Franck HOUSSEN
2ddb03cf46
add sudo.
2020-06-01 11:26:34 +02:00
Franck HOUSSEN
a5b0573808
move specific install in 'before_install' section.
2020-05-31 23:23:10 +02:00
Franck HOUSSEN
4e02e69902
TravisCI: use bionic as it's now available ! Dropping docker.
2020-05-31 22:55:01 +02:00
Franck HOUSSEN
8a97c96134
Try to run interface64 job with ubuntu (more stable than debian/testing).
2020-05-31 22:12:32 +02:00
Franck HOUSSEN
984335a15a
[BUG FIX - TravisCI]: fix Interface64 job.
2020-05-31 18:58:56 +02:00
Franck HOUSSEN
160b572315
[BUG FIX - Architecture]: arpackdef.h for C/C++, and, arpackicb.h for F77/F90. ( #249 )
2020-05-31 14:01:20 +02:00
Franck HOUSSEN
07739ac229
pyarpack: improve python module documentation.
2020-03-03 13:18:36 +01:00
Franck HOUSSEN
259a1596a5
pyarpack: improve README documentation.
2020-03-03 13:17:45 +01:00
Franck HOUSSEN
5c988b0f41
[BUG FIX - ICB] iparam/ipntr sizes may change depending on cases. ( #247 )
...
* [BUG FIX - ICB] iparam/ipntr sizes may change depending on cases.
>> git grep "integer[ ]*iparam" SRC/*[ae]upd*.f
SRC/cnaupd.f: integer iparam(11), ipntr(14)
SRC/cneupd.f: integer iparam(11), ipntr(14)
SRC/dnaupd.f: integer iparam(11), ipntr(14)
SRC/dneupd.f: integer iparam(11), ipntr(14)
SRC/dsaupd.f: integer iparam(11), ipntr(11)
SRC/dseupd.f: integer iparam(7), ipntr(11)
SRC/snaupd.f: integer iparam(11), ipntr(14)
SRC/sneupd.f: integer iparam(11), ipntr(14)
SRC/ssaupd.f: integer iparam(11), ipntr(11)
SRC/sseupd.f: integer iparam(7), ipntr(11)
SRC/znaupd.f: integer iparam(11), ipntr(14)
SRC/zneupd.f: integer iparam(11), ipntr(14)
>> git grep "integer[ ]*iparam" PARPACK/SRC/MPI/*[ae]upd*.f
PARPACK/SRC/MPI/pcnaupd.f: integer iparam(11), ipntr(14)
PARPACK/SRC/MPI/pcneupd.f: integer iparam(11), ipntr(14)
PARPACK/SRC/MPI/pdnaupd.f: integer iparam(11), ipntr(14)
PARPACK/SRC/MPI/pdneupd.f: integer iparam(11), ipntr(14)
PARPACK/SRC/MPI/pdsaupd.f: integer iparam(11), ipntr(11)
PARPACK/SRC/MPI/pdseupd.f: integer iparam(7), ipntr(11)
PARPACK/SRC/MPI/psnaupd.f: integer iparam(11), ipntr(14)
PARPACK/SRC/MPI/psneupd.f: integer iparam(11), ipntr(14)
PARPACK/SRC/MPI/pssaupd.f: integer iparam(11), ipntr(11)
PARPACK/SRC/MPI/psseupd.f: integer iparam(7), ipntr(11)
PARPACK/SRC/MPI/pznaupd.f: integer iparam(11), ipntr(14)
PARPACK/SRC/MPI/pzneupd.f: integer iparam(11), ipntr(14)
* Kill else.
2020-03-02 22:49:21 +01:00
Franck HOUSSEN
79204e9713
[BUG FIX] configure must be Bourne shell compatible.
2020-03-01 21:58:32 +01:00
Franck HOUSSEN
cfdb5f680f
pyarpack: python binding based on Boost.Python.Numpy exposing C++ API. ( #238 )
...
* pyarpack: python binding based on Boost.Python.Numpy exposing C++ API.
* py3.
2020-02-26 12:32:59 +01:00
Franck HOUSSEN
6b04aa4bcc
[BUG FIX] pc and cmake files: accounting for lib64. ( #235 )
2020-02-19 22:34:42 +01:00
Franck HOUSSEN
5100a99c1a
parpack.hpp: don't use complex.h C macros. ( #236 )
2020-02-19 22:33:59 +01:00
Franck HOUSSEN
1eff779f74
[TravisCI] Add osx job ( #234 )
...
* parpack.hpp: don't use complex.h C macros.
* [BUG FIX] fix autotools build on osx.
* [TravisCI] Add osx job.
Full build but only partial testing as some tests crash on osx.
2020-02-19 22:33:34 +01:00
Franck HOUSSEN
1cfa486a50
arpackSolver: cleaning, refactoring. ( #237 )
2020-02-19 22:32:19 +01:00
Franck HOUSSEN
6fa8b271c0
[API] arpackSolver: API change. ( #222 )
...
* [BUG FIX] ICB using rvec/select: rvec/select turned to integer.
bool should be, but, is not always supported (depend on compiler, options).
* [CLEAN] arpackSolver API: clean + more convenient.
2019-10-11 17:03:45 +02:00
Franck HOUSSEN
8a46621c64
[BUG FIX] Fix pc/cmake files. ( #221 )
2019-07-14 09:45:06 +02:00
Franck HOUSSEN
6e2893f17f
Arpack solver ( #217 )
...
* TravisCI: fix ILP64 job. No need for security.debian.org.
* Extract arpackSolver.hpp from arpackmm.cpp.
arpackSolver.hpp is added in the install directory.
2019-07-08 13:11:25 +02:00
Franck HOUSSEN
6254162e2e
TravisCI: fix ILP64 job. No need for security.debian.org. ( #220 )
2019-07-08 13:10:31 +02:00
Franck HOUSSEN
c0725738d7
[BUG FIX] Install: generating crossed cmake/pc files. ( #219 )
...
* TravisCI: fix ILP64 job. No need for security.debian.org.
* [BUG FIX] Install: generating crossed cmake/pc files.
Add cmake/autotool variables in autotool/cmake to generate pc/cmake files.
2019-07-08 13:10:20 +02:00
Franck HOUSSEN
c43cb86854
[BUG FIX] fix cmake/pc files: enable linking from outside. ( #216 )
2019-07-05 08:33:38 +02:00
Franck HOUSSEN
92787d9bcc
Issue63 ( #213 )
...
* Generate arpack.pc when configuring with cmake
* Fix detection using pkg-config
* Use correct cmake variable names
2019-05-23 22:55:46 +02:00
Franck HOUSSEN
10fb0c301c
[BUG FIX] ILP64 support: using debug_c and stat_c. ( #196 )
2019-04-01 10:45:32 +02:00
Franck HOUSSEN
f5aead95fd
[BUG FIX] fix check precision which may fail with some ATLAS versions. ( #198 )
2019-04-01 10:44:02 +02:00
Franck HOUSSEN
c34f762fcd
CI: Add ubuntu:bionic using docker. ( #209 )
...
[BUG FIX]: fix 'eval: Syntax error: "(" unexpected' error at build time.
Note: for CI, pkg-config and libtool must be added when using autotools.
2019-03-15 08:21:50 +01:00
Franck HOUSSEN
f670e731b7
CI: add fedora build via docker run. ( #199 )
2019-03-10 22:28:52 +01:00
Franck HOUSSEN
a26b727bc4
Update changelog. ( #208 )
2019-03-02 22:58:58 +01:00
Franck HOUSSEN
1dab774991
autotools: provide *.cmake files (in addition to *.pc file). ( #207 )
...
note: cmake provides both *.pc and *.cmake files.
2019-03-02 18:55:55 +01:00
Franck HOUSSEN
6615574e37
arpackmm: add --dense option. ( #194 )
2019-03-02 18:54:50 +01:00
Franck HOUSSEN
8fe4734da8
arpackmm: run test script with bash. ( #206 )
2019-03-02 18:53:51 +01:00
Franck HOUSSEN
dfc8abd708
[BUG FIX] arpack may succeed to compute more EV than expected. ( #197 )
2019-02-13 17:01:22 +01:00
Franck HOUSSEN
a98f85544f
CI: make docker-run builds aware of PR commits. ( #200 )
...
Note: `-` was missing in `-enable-icb-exmm`, replaced with `--enable-icb`.
2019-02-13 16:59:34 +01:00
Franck HOUSSEN
5fff9efa5c
CMake: make build dir look like source dir. ( #201 )
...
* CMake: make build dir look like source dir.
* CMake: provide files for coverage.
2019-02-12 14:17:12 +01:00
Franck HOUSSEN
7ae47646d4
CI: reduce logs, fix precision problem, increase coverage. ( #193 )
2019-01-27 10:12:39 +01:00
Franck HOUSSEN
e10f589232
arpackmm: refactorisation, documentation, help, add timers. ( #191 )
2019-01-24 20:17:51 +01:00
Franck HOUSSEN
9112422e3b
arpackmm: add missing options in option summary. ( #190 )
2019-01-23 18:50:53 +01:00
Franck HOUSSEN
3596f02a3e
Arpackmm: add --simplePrec option (to enable use of [sc]*upd). ( #189 )
...
* arpackmm: factorisation before adding new option.
* arpackmm: add --simplePrec option (to enable use of [sc]*upd).
2019-01-23 18:35:55 +01:00
Franck HOUSSEN
bc5cb025c8
Arpackmm ( #188 )
...
* arpackmm: add --slv LLT/LDLT.
* arpackmm: get consistent direct solver cmd line (kill --slvDrtPvtThd).
2019-01-20 23:10:05 +01:00
Franck HOUSSEN
6657ca2cca
arpackmm: add --slvItrPC option (PC: Jacobi, ILU). ( #187 )
2019-01-14 15:47:42 +01:00
Franck HOUSSEN
fee44e613d
Add parpack files in the coveralls report. ( #184 )
2019-01-13 20:34:04 +01:00
Franck HOUSSEN
ad9f74b962
Add error message if eigen is not found at configure time (autotools). ( #185 )
...
* Add error message if eigen is not found at configure time (autotools).
* Update configure.ac
Co-Authored-By: fghoussen <fghoussen@users.noreply.github.com >
2019-01-13 20:33:43 +01:00
Franck HOUSSEN
7317371abd
arpackmm: add --schur option. ( #181 )
2019-01-11 09:46:39 +01:00
Franck HOUSSEN
c957f8c43e
arpackmm: add --slvDrtPvtThd option. ( #180 )
2019-01-11 08:22:37 +01:00
Franck HOUSSEN
56c2791dc6
[CLEAN] add .dirstamp in .gitignore. ( #177 )
2019-01-11 08:21:49 +01:00
Franck HOUSSEN
3d3bcd0c49
arpackmm: add --cpxPb option (run with zn[ae]upd). ( #174 )
2019-01-10 16:02:15 +01:00
Franck HOUSSEN
16e331abf3
arpackmm: add check. ( #173 )
2019-01-06 18:07:16 +01:00
Franck HOUSSEN
8a17cea5b7
[BUG FIX] changes needed after PR#165 (ILP64). ( #169 )
...
This was need to PR as the ilp64 branch didn't exist on opencollab/master.
2018-12-29 19:39:52 +01:00
Franck HOUSSEN
aa970cefa6
ILP64 support. ( #165 )
...
The idea is:
- cmake generates arpackdef.h from arpackdef.cmake.h.in
- autoheader generates arpackdef.h from arpackdef.autotools.h[.in]
- arpack includes arpackdef.h when/where needed:
- #define provide c_int/a_int according to architecture.
- all f90 who need to include "arpackdef.h" must be moved to F90.
Note: by convention, F90 are preprocessed (f90 are not).
- MPI does not support ILP64: integer*4 must be imposed in all
calls involving MPI (f90 example/test code).
To enable ILP64 users to compile/link, arpackdef.h is added in
the arpack installation (make install).
2018-12-29 13:55:40 +01:00
Franck HOUSSEN
2c1f6ebb5b
arpackmm: utility to test arpack with matrix market files. ( #157 )
2018-12-12 09:39:56 +01:00
Franck HOUSSEN
8840cfdf43
Add github templates when creating issue/PR. ( #167 )
2018-12-11 18:26:00 +01:00
Franck HOUSSEN
aff1edc46a
Add F77 and FFLAGS in autotools configuration summary. ( #166 )
2018-11-23 11:28:05 +01:00
Franck HOUSSEN
f18f8fa322
TravisCI - move CI to xenial: get not-so outdated packages. ( #164 )
...
* Create root ICB directory.
* TravisCI: move to precise + trusty + xenial.
* [CLEAN] autotools: kill from EXTRA_DIST all what is already in
arpack_include_HEADERS.
* [BUG FIX] fix circular dependencies in "make distcheck".
- do not use AC_CONFIG_FILES to create files in builddir.
- refer files when needed with srcdir (*_*FLAGS).
2018-11-20 12:09:18 +01:00
Franck HOUSSEN
703fb580a4
[BUG FIX] ICB: missing workev for *[ds]neupd (real+not-sym). ( #155 )
...
Even with real matrices, eigen values can be complex if matrices
are not symmetric. In this case, you need workev.
ICB tests: should be OK as it turns out that they do NOT use
real+not-sym methods (they use real+sym and complex+non-sym).
2018-11-10 09:26:27 +01:00
Franck HOUSSEN
95360d81d6
[BUG FIX] TravisCI: show build error or test log to know what is wrong ( #161 )
...
if error occured (cmake bug, autotools OK, increase tail).
2018-10-11 16:21:31 +02:00
Franck HOUSSEN
8f95a7d772
TravisCI: show build error or test log to know what is wrong ( #160 )
...
if errors occured.
2018-10-11 15:12:30 +02:00
Franck HOUSSEN
ee9a93a853
Update CHANGES. ( #156 )
2018-09-16 16:05:43 +02:00
Franck HOUSSEN
2d969e902d
[CLEAN] Run MPI tests with "mpirun -n 2". ( #152 )
2018-09-15 17:46:24 +02:00
Franck HOUSSEN
5872987e67
[BUG FIX] howmny is defined as character*1 in pdseupd subroutine. ( #153 )
...
Cosmetic bug ("safer" way to get same thing).
2018-09-15 17:38:27 +02:00
Franck HOUSSEN
bbb87ba0ff
Fix issue 144. Add -fdefault-integer-8/-i8 in FCFLAGS. ( #147 )
2018-09-15 17:36:42 +02:00
Franck HOUSSEN
78d781286a
stat: initialize common block. ( #148 )
...
* stat: initialize common block.
* Move debug_init.f90/stat_init.f90 to dbgini.f/staini.f.
In cases where one has 2 fortran compilers (F77+F90), the reference code
base and (missing) related common initialisations will be compiled
consistently by the same (F77) compiler. F90 will handle ICB (f2003-f2008)
that could not be compiled by F77.
Note: in F77, code starts at col 7, continuation line with & at col 6,
length line is limited, names must be smaller than 7 chars (no underscore).
* [BUG FIX] compile dbgini.f staini.f with AND without ICB.
2018-09-15 17:35:57 +02:00
Franck HOUSSEN
3829c449c0
Add missing test binaries in gitignore. ( #151 )
2018-09-15 17:35:12 +02:00
Franck HOUSSEN
b7ce7debe5
[BUG FIX] When using *zneupd, sigma is complex. ( #154 )
...
Cosmetic bug ("better" way to get same thing - without this, sigma which
is used as an input, is implicitely converted from real to complex. Same
thing for the callee, but more "logical" for the caller).
2018-09-15 17:31:35 +02:00
Franck HOUSSEN
cdfb08aac2
Travis-CI: use jobs (easier to check out what's wrong). ( #138 )
2018-06-30 22:43:31 +02:00
Franck HOUSSEN
f532cc06a1
Various improvement on build systems
...
* [CLEAN] ICB saves you from old-fashion-boring-cumbersome-fortran/C crap...
* Run old-fashion cubersome Fortan/C tests only if ICB=OFF.
Getting them to work with BOTH ICB=ON/OFF would be adding tricky-messy
to already cubersome-crappy black magic...
Note that icb_arpack_c test (ICB=ON) do the same than bug_1315_*
tests (ICB=OFF): icb_arpack_c was initially a copy of bug_1315_*.
In the end, you don't loose anything (same functional coverage).
2018-06-29 11:41:41 +02:00
Franck HOUSSEN
c61bb2c16a
Clean ( #136 )
...
* [CLEAN] always define ICB.
* [BUG FIX] Can't call AC_PROG_CXX conditionally.
https://lists.gnu.org/archive/html/bug-automake/2002-11/msg00020.html
* [BUG FIX] ICB: set default value.
* Check options are set as expected.
Note: before previous fix, options were NOT set correctly !...
2018-06-26 17:35:32 +02:00
Franck HOUSSEN
eb9d23dd3f
Add configuration summary. ( #135 )
2018-06-26 14:51:14 +02:00
Franck HOUSSEN
68a420889c
[BUG FIX] Missing include. ( #134 )
2018-06-26 14:18:35 +02:00
Franck HOUSSEN
277a6c8cfe
C++11 (for ICB): do NOT use hard-coded gnu++11. ( #133 )
2018-06-25 21:38:48 +02:00
Franck HOUSSEN
54c8e0b18c
autotools: run parpack tests with "mpirun -n 2". ( #101 )
2018-03-24 18:39:25 +01:00
Franck HOUSSEN
b52efe5f2c
parpack: configuration check (use iso_c_binding, MPI_Comm_c2f). ( #100 )
...
* parpack: check for MPI_Comm_c2f.
* iso_c_binding: check for icb module compilation.
2018-03-23 11:39:15 +01:00
Franck HOUSSEN
4985c11b19
parpack: running autotools tests. ( #99 )
...
note: ax_mpi must be ran twice (first run in --enable-mpi scope
is lost when entering --enable-icb scope).
2018-03-22 15:27:38 +01:00
Franck HOUSSEN
6c1bd3053d
[BUG FIX] CMake: use ${PROJECT_SOURCE_DIR}. ( #97 )
...
.. is OK only when the BUILD dir in under the root dir.
2018-03-21 17:54:43 +01:00
Franck HOUSSEN
2daaeaf2e9
TravisCI: kill libc++-dev. ( #96 )
2018-03-21 16:26:50 +01:00
Franck HOUSSEN
7bdcee1b23
parpack : add iso_c_binding support. ( #95 )
2018-03-21 13:24:10 +01:00
Franck HOUSSEN
264603d284
arpack.hpp: adding comments. ( #93 )
2018-03-12 15:21:36 +01:00
Franck HOUSSEN
3e841c8b13
Add CMake build directories in .gitignore. ( #90 )
2018-03-10 16:26:30 +01:00
Franck HOUSSEN
f14261dcb0
arpack.hpp: add const to improve C++ integration. ( #89 )
...
note: as const is added on function arguments, this should be safe from C <-> C++ pitfalls.
2018-03-10 16:26:14 +01:00
Franck HOUSSEN
1d912add4f
CMake: kill useless lines (coming from bad merge ?). ( #78 )
2017-11-09 10:43:11 +01:00
Franck HOUSSEN
2f721dbade
Issue 62: generate static/shared libraries. ( #75 )
2017-10-29 21:48:55 +01:00
Franck HOUSSEN
0e7d01d34b
CMake: find_package for both parpack and arpack. ( #76 )
...
/tmp> cp /path/to/arpack-ng/PARPACK/EXAMPLES/MPI/*.f .
/tmp> cp /path/to/arpack-ng/PARPACK/EXAMPLES/MPI/*.h .
/tmp> more CMakeLists.txt
cmake_minimum_required(VERSION 3.7)
project(pdndrv1 Fortran)
find_package(MPI REQUIRED)
find_package(arpack-ng 3.5 REQUIRED)
find_package(BLAS REQUIRED)
find_package(LAPACK REQUIRED)
add_executable(pdndrv1 pdndrv1.f)
target_link_libraries(pdndrv1 "${arpack_ng_LIBRARIES}" "${MPI_Fortran_LIBRARIES}" "${BLAS_LIBRARIES}" "${LAPACK_LIBRARIES}")
target_include_directories(pdndrv1 PUBLIC "${arpack_ng_INCLUDE_DIRS}" "${MPI_Fortran_INCLUDE_PATH}")
/tmp> export CMAKE_PREFIX_PATH=/path/to/arpack-ng/local # Should be done by module load.
/tmp> mkdir BUILD; cd BUILD; cmake ..; make
/tmp> mpirun -n 2 ./pdndrv1
2017-10-29 21:48:38 +01:00
Franck HOUSSEN
da46ff3d4b
Provide tarball generation using cmake (cpack). ( #70 )
...
Provide tarball generation using cmake (cpack)
2017-10-26 16:56:06 +02:00
Franck HOUSSEN
282fe8aa79
Run the testsuite in the CI with cmake. Fixes issue #64 .
2017-10-26 15:49:37 +02:00
Franck HOUSSEN
19ac60166b
Improve iso_c_binding coverage ( #73 )
...
* Provide arpack.h/hpp in install directory.
>> tree local/
local/
├── include
│ ├── arpack.h
│ └── arpack.hpp
└── lib
├── libarpack.a
...
* [BUG FIX] Provide arpack.h/hpp in install directory: fix make distcheck.
* Move iso_c_binding to icb_arpack.
This will ease iso_c_binding implementation for parpack (future dev).
* Improve iso_c_binding coverage. Add tests involving complex.
2017-10-26 11:46:24 +02:00
Franck HOUSSEN
771cbbd9c8
Add support for iso_c_binding (portability, f/c/c++ binding). ( #68 )
...
* Add support for iso_c_binding (portability, f/c/c++ binding).
* Add support for iso_c_binding: add README and comment examples.
2017-10-16 17:47:23 +02:00
Franck HOUSSEN
be3a61cfee
Provide find_package for (cmake) users to find arpack-ng. ( #69 )
...
This is the cmake equivalent of pkg-config.
The make install will ship config files:
/path/to/arpack-ng/BUILD> cmake ..; make install
[100%] Built target arpack
Install the project...
-- Install configuration: "Release"
-- Installing: /path/to/arpack-ng/local/lib/libarpack.a
-- Installing: /path/to/arpack-ng/local/*[Cc]onfig*.cmake
Now, the user who wants to use arpack-ng can use find_package:
/tmp> export CMAKE_PREFIX_PATH="/path/to/arpack-ng/local:${CMAKE_PREFIX_PATH}" # Should be done by module load arpack-ng.
/tmp> more CMakeLists.txt
cmake_minimum_required(VERSION 3.7)
find_package(arpack-ng 3.5 REQUIRED) # Find *Config*.cmake.
/tmp> mkdir BUILD; cd BUILD; cmake ..
...
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/BUILD
/tmp/BUILD> cmake -LA .. | grep Arpack
ArpackNG_DIR:PATH=/path/to/arpack-ng/local
ArpackNG_INCLUDE_DIRS:PATH=/path/to/arpack-ng/local/include
ArpackNG_LIBRARIES:FILEPATH=/path/to/arpack-ng/local/lib/libarpack.a
The user can use ArpackNG_INCLUDE_DIRS and ArpackNG_LIBRARIES to compile/link with arpack-ng in his own CMakeLists.txt (after find_package).
If the user asks for an newer version, cmake breaks at configure time: this is checked by ArpackNGConfigVersion.cmake.
2017-10-16 14:38:51 +02:00