Ivan Pribec
Ivan Pribec
Now that is odd, because `icpx` is also LLVM-based like `clang`. I guess my first approach would be to step through that test with a debugger, side-by-side with gcc, and...
I received a tip it may be an issue of floating point reproducibility, as the default behavior of `icpx` differs from `gcc` and `clang`. It may be the option `-fp-model...
The idea is just to restrict the particle coordinates (see https://en.wikipedia.org/wiki/Periodic_boundary_conditions). When calculating distances, you need to modify the calculation as follows: ``` if (periodic_x) then dx = x(j) -...
Intel MKL library has a Fortran 90 interface to a set of functions for [data fitting](https://software.intel.com/en-us/mkl-developer-reference-fortran-data-fitting-computational-routines#FC83C653-2C9E-481A-BAF9-588A6AA544BF). The API is however task-based and not that intuitive compared to Python's or MATLAB's...
I was only testing GCC and Intel compilers. Potentially TBB via MKL Sparse BLAS, but I'd need to double check this. I'll try again with a simpler application.
The `-Wno-error=do-subscript` flag is not available in older versions of gfortran (e.g. version 7.5) so this is not a solution anyways.
Also available in Octave as [`quadgk`](https://octave.org/doc/v6.4.0/Functions-of-One-Variable.html#XREFquadgk).
The package [DE-Quadrature](https://www.kurims.kyoto-u.ac.jp/~ooura/intde.html) also contains a Fortran implementation of tanh-sinh quadrature (also called double exponential quadrature). @arjenmarkus also offered an implementation of his in https://github.com/fortran-lang/stdlib/issues/612 (see also my comment therein).
This algorithm is also available as [`quadcc`](https://octave.org/doc/v6.4.0/Functions-of-One-Variable.html#XREFquadcc) in Octave. As a side note, I'm kind of impressed by the quality of Octave's documentation on [numerical integration](https://octave.org/doc/v6.4.0/Functions-of-One-Variable.html#).
I'd be happy to contribute this fix. Biggest obstacle I see is that fpm doesn't yet have first class LAPACK or BLAS support (see https://github.com/fortran-lang/fpm/issues/368).