g1257 / dmrgpp Goto Github PK
View Code? Open in Web Editor NEWA free and open source implementation of the DMRG Algorithm
Home Page: https://g1257.github.io/dmrgPlusPlus/
License: Other
A free and open source implementation of the DMRG Algorithm
Home Page: https://g1257.github.io/dmrgPlusPlus/
License: Other
Hello, while preparing the switch to boost 1.81 I got these warning about deprecated headers.
g++ -frecord-gcc-switches -Wdate-time -D_FORTIFY_SOURCE=2 -pedantic -std=c++11 -Wall -Wendif-labels -I/usr/include/hdf5/serial -DUSE_BOOST -DNDEBUG -O3 -DUSE_PTHREADS -g -c ../src/Ainur/AinurSpirit.cpp
In file included from /usr/include/boost/config/header_deprecated.hpp:18,
from /usr/include/boost/spirit/include/phoenix_core.hpp:11,
from ../src/Ainur/AinurSpirit1.cpp:7,
from ../src/Ainur/AinurSpirit.cpp:2:
/usr/include/boost/spirit/include/phoenix_core.hpp:12:1: note: ‘#pragma message: This header is deprecated. Use <boost/phoenix/core.hpp> instead.’
12 | BOOST_HEADER_DEPRECATED("<boost/phoenix/core.hpp>")
| ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/boost/spirit/include/phoenix_operator.hpp:12:1: note: ‘#pragma message: This header is deprecated. Use <boost/phoenix/operator.hpp> instead.’
12 | BOOST_HEADER_DEPRECATED("<boost/phoenix/operator.hpp>")
| ^~~~~~~~~~~~~~~~~~~~~~~
g++ -frecord-gcc-switches -Wdate-time -D_FORTIFY_SOURCE=2 -pedantic -std=c++11 -Wall -Wendif-labels -I/usr/include/hdf5/serial -DUSE_BOOST -DNDEBUG -O3 -DUSE_PTHREADS -c ../src/Ainur/AinurConvert.cpp
In file included from /usr/include/boost/config/header_deprecated.hpp:18,
from /usr/include/boost/spirit/include/phoenix_core.hpp:11,
from ../src/Ainur/AinurConvert1.cpp:5,
from ../src/Ainur/AinurConvert.cpp:2:
/usr/include/boost/spirit/include/phoenix_core.hpp:12:1: note: ‘#pragma message: This header is deprecated. Use <boost/phoenix/core.hpp> instead.’
12 | BOOST_HEADER_DEPRECATED("<boost/phoenix/core.hpp>")
| ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/boost/spirit/include/phoenix_operator.hpp:12:1: note: ‘#pragma message: This header is deprecated. Use <boost/phoenix/operator.hpp> instead.’
12 | BOOST_HEADER_DEPRECATED("<boost/phoenix/operator.hpp>")
| ^~~~~~~~~~~~~~~~~~~~~~~
ar rcs libpsimaglite.a MersenneTwister.o Matrix.o Mpi.o Concurrency.o ProgressIndicator.o MemResolv.o PsimagLite.o PsiBase64.o SpecialFunctions.o TypeToH5.o TridiagonalMatrix.o PredicateSimple.o AinurSpirit.o AinurConvert.o
make[2]: Leaving directory '/<<PKGBUILDDIR>>/psimaglite/lib'
/usr/bin/make -C src
make[2]: Entering directory '/<<PKGBUILDDIR>>/src'
Have a nice day.
Frederic
In order to produce a clean build of dmrgpp I need to clean the source like this
override_dh_auto_clean:
[ -f psimaglite/lib/Makefile ] && $(MAKE) -C psimaglite/lib/ clean || true
[ -f src/Makefile ] && $(MAKE) -C src clean || true
$(RM) src/KronUtil/libkronutil.a src/libdmrgpp.a src/operator
$(RM) psimaglite/lib/Makefile src/GitRevision.h
$(RM) src/KronUtil/Makefile src/Makefile
$(RM) -f src/KronUtil/test1 src/KronUtil/test2
So it seems that a bunch of generated files remain after a clean.
the psimaglite directory is the embeded version in the Debian package of dmrgpp
tests also generate a bunch of binaries which should be removed after a clean :).
Cheers
Internal number is 19
Internal number is 42. Rixs new implementation (Alberto, Nitin)
Hello, is it possible to tag a new version with a working build
the current 6.0.4 failed with
make[2]: Entering directory '/<<PKGBUILDDIR>>/src'
g++ -frecord-gcc-switches -Wdate-time -D_FORTIFY_SOURCE=2 -pedantic -std=c++11 -Wall -Wendif-labels -I/usr/include/hdf5/serial -DUSE_BOOST -DUSE_PTHREADS -O3 -DNDEBUG -I ../psimaglite/ -I ../psimaglite/src/ -I. -I Engine -MM Provenance.cpp Su2Related.cpp ProgramGlobals.cpp Utils.cpp Qn.cpp observe.cpp toolboxdmrg.cpp ObserveDriver0.cpp ObserveDriver1.cpp ObserveDriver2.cpp manyOmegas.cpp procOmegas.cpp DmrgDriver0.cpp DmrgDriver1.cpp DmrgDriver2.cpp DmrgDriver3.cpp DmrgDriver4.cpp DmrgDriver5.cpp DmrgDriver6.cpp DmrgDriver7.cpp DmrgDriver8.cpp DmrgDriver9.cpp DmrgDriver10.cpp DmrgDriver11.cpp dmrg.cpp > Makefile.dep
./createGitRevision.pl GitRevision.h
g++ -frecord-gcc-switches -Wdate-time -D_FORTIFY_SOURCE=2 -pedantic -std=c++11 -Wall -Wendif-labels -I/usr/include/hdf5/serial -DUSE_BOOST -DUSE_PTHREADS -O3 -DNDEBUG -I ../psimaglite/ -I ../psimaglite/src/ -I. -I Engine -c observe.cpp
In file included from Engine/TermForTargetingExpression.h:6,
from Engine/AlgebraForTargetingExpression.h:6,
from Engine/SpecForTargetingExpression.h:10,
from Engine/TargetingExpression.h:85,
from Engine/TargetSelector.h:14,
from Engine/DmrgSolver.h:91,
from ObserveDriver.h:15,
from observe.cpp:1:
Engine/NonLocalForTargetingExpression.h: In member function ‘bool Dmrg::NonLocalForTargetingExpression<TargetingBaseType>::timeEvolve(PsimagLite::String, const SiteSplitType&, PsimagLite::String, SizeType)’:
Engine/NonLocalForTargetingExpression.h:91:25: error: ‘HamiltoriModifierType’ was not declared in this scope
91 | HamiltoriModifierType hamModif = nullptr;
| ^~~~~~~~~~~~~~~~~~~~~
Engine/NonLocalForTargetingExpression.h:93:33: error: ‘hamModif’ was not declared in this scope
93 | hamModif = new HamiltoriModifierType(lrs, );
| ^~~~~~~~
Engine/NonLocalForTargetingExpression.h:93:48: error: expected type-specifier before ‘HamiltoriModifierType’
93 | hamModif = new HamiltoriModifierType(lrs, );
| ^~~~~~~~~~~~~~~~~~~~~
Engine/NonLocalForTargetingExpression.h:102:69: error: ‘hamModif’ was not declared in this scope
102 | hamModif);
| ^~~~~~~~
Internal number is 27
Stuff to dump to disk to save RAM by order of priority:
27.1 stacks of DMRG basiswithoperators.
27.2 Lanczos Vectors.
Hi,
I'm trying to install dmrgpp on ubuntu following the tutorial.
In the final step of make in the dmrgpp/src folder, there are errors related to 'KronUtil/libkronutil.a':
> g++ -frecord-gcc-switches -pedantic -std=c++11 -Wall -Wendif-labels -I/usr/include/hdf5/serial -DUSE_BOOST -DUSE_PTHREADS -O3 -DNDEBUG -I ../../PsimagLite -I ../../PsimagLite/src -I Engine -c manyOmegas.cpp
> ar rcs libdmrgpp.a Provenance.o ProgramGlobals.o Qn.o Utils.o
> make: *** No rule to make target 'KronUtil/libkronutil.a', needed by 'manyOmegas'. Stop.
What might be the problems?
Wishes
Shang
see WaveFunctionTransfFactory.h
Write "expert"-like system that takes a DMRG++ input.inp
and guesstimates the needed "m", the wall-time, the RAM usage, etc.
Work has already started.
./toolboxdmrg -f input.inp -a analysis
Internal number is 34.
Hello, I try to run the test suite but I got this error message
make[1]: Entering directory '/<<PKGBUILDDIR>>'
cd TestSuite && ./testsuite.pl -a
No such file or directory at ../psimaglite/TestSuite/TestSuiteGlobals.pm line 249.
When I am looking at the 249 line I find this
#Runs a single test
sub testSuite
{
my ($testNum)=@_;
#$tempNum -= 100 if($testNum >= 100);
my $procFile = $TestSuiteGlobals::inputsDir."processing$testNum.txt";
my $procLib = $TestSuiteGlobals::inputsDir."processingLibrary.txt";
if(-r $procLib) {
if(-r "$procFile") {
print "*******START OF TEST $testNum*******\n";
$TestSuiteGlobals::specFile = getSpecFile($procFile);
my @analyses = extractAnalyses($procFile) ;
(@analyses) ? (processing(@analyses, $procLib)) : (print "Test $testNum does not includes any processing analyses.\n");
print "*******END OF TEST ".$testNum."*******\n";
} else {
die "Could not find $procFile: $!";
}
} else {
die "$!";
}
}
So it expect the processingLibrary.txt
in the inputs directory.
But I can not find this file in the inputs directory.
What is wrong here ?
thanks
Internal number is 41. New input system (Ainur)
Feature Proposal: https://github.com/g1257/PsimagLite/blob/master/doc/PsimagLiteFp0.tex
How to reproduce: cd TestSuite; ./testsuite -n 102
./operator for two orbitals.
Sz for orbital a and orbital b are same.
The Sz matrix is probably sum of a and b.
Internal number is 31
Liberate the discount variable in KronUtil, label it DenseSparseDiscount
-flto with clang++ not just with gcc (investigate). Internal number is 33.
ParametersForSolver is a class in PsimagLite/src that contains the parameters for the Lanczos- Davidson- and Chebyshev solvers. It is currently not possible to read ParametersForSolver parameters from DMRG++'s input file.
This should not be a problem because all previous data must have already being processed and printed by observe.
Some have noticed, however, that because the printing is probably buffered, sometimes the segfault precludes the printing from happening at all, particularly when running observe in a batch job.
WORKAROUND: Have the sweeps that save() to disk end at one of the corners.
() Sweeps that save are those that have the first bit of the 3rd number of the finite loop triplet set.
Time-dependent addition terms of the form sum_i W_i n_i cos(omega t) seem to be working as long as W_i =0 at both ends of the lattice. See TestSuite/inputs/input50?.inp
Test slots 500 to 550 will be reserved for this issue.
(suggested by Alberto and Nirav)
Feature Proposal: https://github.com/g1257/dmrgpp/blob/master/doc/DmrgPlusPlusFp0.tex
Internal number is 39.
Do W_i O_{ij} W_j where the indices refer to patches. Each patch is a DenseMatrixOrSparse object.
A CUDA-enabled plugin to this code uses MAGMA to accelerate calculations using GPUs. Documentation should be created to explain how to compile and benchmark this version.
Feature Proposal: Operator Expressions at https://github.com/g1257/dmrgpp/blob/master/doc/DmrgPlusPlusFp1.tex
Read it along Chapter 4 of the manual at https://g1257.github.io/dmrgPlusPlus/manual.html
Canonical operator expressions are now implemented, but general expression not yet.
Internal number is 36.
Suzuki-Trotter 2nd order needs to be implemented.
Right now, a run can be restarted only if it finished normally, not if it was stopped suddenly.
We need full checkpointing meaning to be able to checkpoint at the end of every finite loop movement.
Issue #11 is related.
Tests 201 to 250 have been reserved for this issue.
The manual.tex file is not generated in the installation. When manually running the following command as in the MakeFile:
'find ../src -iname ".h" -or -iname ".cpp" | ../../PsimagLite/scripts/doc.pl manual.ptex'
There is an error message:
'../../PsimagLite/scripts/doc.pl: ERROR: Label DmrgDriver is duplicate'
What might be the problem?
Last site for 3-point and 4-point observables is not computed.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.