— Ondra Kamenik has agreed to the relicensing of utils and parser modules to
GPL
— add DynareTeam’s copyright, since we have made a lot of modifications
— add proper copyright notices in all files
Previously there were GeneralMatrix::numRows() and TwoDMatrix::nrows() for doing
the same thing (and same for columns and Const versions).
Merge these two into GeneralMatrix::nrows().
As a consequence, the singleton implementation has to be made thread-safe.
Also implement the singleton pattern using a namespace, rather than a static
instance.
We now use a initializer list constructor for creating symmetries of the form
$y^n$, $y^n u^m$, $y^nu^m\sigma^k$.
The constructor taking a single integer is used to initialize a symmetry of a
given length.
Similar changes are made to IntSequence.
This behavior is similar to std::vector.
On Windows, this means that a POSIX threads implementation is no longer needed,
since C++11 threads are implemented using native Windows threads.
On GNU/Linux and macOS, POSIX threads are still used under the hood.
A new m4 macro (AX_CXX11_THREAD) is used to add the proper compilation
flags (instead of AX_PTHREAD).
Many BLAS/LAPACK calls were making the assumption that LD==rows when passing
matrices. In some cases this was correct (because of implementation details,
in particular because how the copy constructor of GeneralMatrix is implemented).
But in other cases it was a bug.
With this commit, the actual value for LD is systematically used (this fixes
existing bugs and prevent possible future ones if the implementation details
were changed).
This quadrature is supposed to generate quadrature points that are
quasi-normally distributed. Basically it applies the inverse normal CDF to the
Halton low-discrepancy sequence.
The problem is that it gives poor numerical accuracy, and therefore fails the
tests.
Since it is actually used nowhere in Dynare++, remove that code.
- Use the -static flag when linking Dynare++, so that shipping libquadmath and
libgcc DLL in the installer is no longer needed.
- Use AM_CXXFLAGS and AM_LDFLAGS variables for changing flags, since CXXFLAGS
and LDFLAGS are user variables. Also, this avoids passing these flags down to
configure scripts in subdirectories.
- Check for the SZIP library in the configure test for the MatIO, this is
needed under MSYS2.
- Statically link MatIO and GSL in MEX files for MATLAB, this is needed under
MSYS2.
* support Microsoft Visual C++ 2008 compiler (necessary for 64-bit
platforms)
* use standard C++ headers for C Standard Library support
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3121 ac1d8469-bf42-47a9-8791-bf33cf982152
* Fixes to Dynare++ for special LAPACK/BLAS integers in MATLAB
* Fixes to korderpert DLL for cross-platform compatibility
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3009 ac1d8469-bf42-47a9-8791-bf33cf982152
* Simplified the way we deal with various Octave/MATLAB contexts from MEX files:
- only three defines: MATLAB_MEX_FILE, MATLAB_VERSION (hex number) and OCTAVE_MEX_FILE
- one header for MEX files: dynmex.h
- headers for BLAS and LAPACK: dynblas.h and dynlapack.h (used from Dynare++ and the MEX files)
* Merged the two sources trees of sylvester library
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3006 ac1d8469-bf42-47a9-8791-bf33cf982152
Note that dynare++ will only be built if configure finds ctangle, blas, lapack and pthreads
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2922 ac1d8469-bf42-47a9-8791-bf33cf982152