3
0
mirror of https://github.com/triqs/dft_tools synced 2024-11-01 11:43:47 +01:00
Commit Graph

292 Commits

Author SHA1 Message Date
tayral
82a6d21939 Fixed computation of density for full matsub mesh
-> Previously, calculation was implicitly assuming a mesh with only positive matsubara frequencies.
-> Added corresponding test
-> Also added test of density calculation with or without correct tail.
2014-02-18 16:16:14 +01:00
Olivier Parcollet
6e87bee850 lattice: clean old classes, add bz_mesh, gf on bz 2014-02-18 15:53:38 +01:00
Olivier Parcollet
e82d95d1a8 gf: add C++14 impl of meshes products
-  add c14 include
- the C++14 is lot more readable (due to generic lambda).
- for mesh/product.hpp -> now 2 versions (C++14 and C++11 for temporary
  backward compatibility).
2014-02-18 15:37:57 +01:00
Olivier Parcollet
96ef742344 c14, tuples : various fixes.
- Various details (for_each_enumerate impl)
- also put all tuple stuff in tuple_tools.hpp
- add std14 namespace for usage of c++14 helper types
2014-02-18 15:37:57 +01:00
Olivier Parcollet
a503ddae26 clef: correction of macro
- a strange issue, why was it not working ?
- anyway, the separation is useless (was a try).
2014-02-18 15:37:57 +01:00
Olivier Parcollet
76e39c826f arrays: add make_unit_matrix and norm2, norm2_sqr 2014-02-18 15:36:24 +01:00
Olivier Parcollet
1c9d6dacfa arrays: h5 read/write for arrays of complex types
- array of complex type (not fundamental) can now be saved/loaded to
  h5
- with a test with array<gf<...>>
2014-02-13 21:46:23 +01:00
Olivier Parcollet
7aedaef945 arrays : fix matrix = scalar for complex types
Pb :
M() = rhs; // rhs of type RHS
Currenlty does :
M(i,j) = (i==j ? rhs : RHS{})
Changed to
M(i,j) = (i==j ? rhs : RHS{0*rhs})

If RHS is a double, int ... Same result.
If RHS is a matrix, gf, currently the offdiag elements
are default constructed (i.e. of 0 size !).
Which can break operations later (matrix<matrix<double>>)
After change : all elements have the same size !
2014-02-12 21:50:58 +01:00
tayral
87dc9aeaa5 Add statistic tools
- binning, jackknife, autocorrelation, observable.
- DRAFT only : in development, debug. Doc to be written.
2014-02-12 09:41:07 +01:00
Olivier Parcollet
e182762bf2 clef : add apply_on_each_leaf
- apply_on_each_leaf: apply a function object to every leaf of the tree
- add some macros...
2014-02-10 21:04:27 +01:00
Olivier Parcollet
786bd7095e clef: further little corrections
- declaration order in template.
- some eval details
- do not undef the macro TRIQS_CLEF_STD_MATH_FNT_TO_MAKE_LAZY
for reuse in other part of the lib
2014-02-09 21:04:26 +01:00
Olivier Parcollet
7e1f2eb34b clef: cleaning
- use alias
- rename a few things, simplify
- some clang format
- add eval to ref wrapper
- correct evaluator general (return const &, no copy)
- correct declaration order of struct and operator OP
2014-02-09 16:11:39 +01:00
Olivier Parcollet
3f62825559 c14. add some helper traits to simplify
add_const_t and co....
fix include
2014-02-09 16:11:39 +01:00
Olivier Parcollet
dd6b996e5d arrays: to_python now raise exception when array is empty
- otherwise it was simply crashing .
- now raise a C++ exception
- adapted cython wrapper to catch it as a python exception
2014-02-04 15:04:40 +01:00
Hartmut Hafermann
65ed3a8dc2 gf: new tail fitting 2014-02-03 22:22:21 +01:00
Hartmut Hafermann
31ae772892 arrays: add gelss 2014-02-03 22:16:58 +01:00
Olivier Parcollet
85141350e7 remove warnings in compilation
- triqs & tests now compiles with -Wall on clang (3.2)
Checked on OS X.
Todo : recheck on other compilers.
2014-01-30 22:17:28 +01:00
Olivier Parcollet
9f0915acb6 gfs, matsubara: correct unary - for matsubara_freq
- The unary - of matsubara_freq was not correct ...
missing () around the ==
2014-01-30 21:29:53 +01:00
Olivier Parcollet
eda6eb90a2 arrays: correction of value_type of matrix_expr
- forgot to correct the value_type of matrix_expr, and vector_expr
as was done long ago for arrays...
- also added cases for arrays until dim 10
- TODO : replace this trait in arrays with a tuple tools for any dim..
  not urgent.
2014-01-30 20:28:30 +01:00
Olivier Parcollet
91978da6db gfs: mesh product, rename shape method...
- just a renaming for readibility.
2014-01-30 20:28:30 +01:00
Olivier Parcollet
ff3de6c5e7 mc_tools: simplify measure_aux
- for pieces that need to be precomputed for several
measures.
- put them under shared_ptr, and register then with add_measure_aux.
- they must be callable, as void ().
- TODO : add this in the doc when tested
2014-01-30 20:28:30 +01:00
Olivier Parcollet
35a15f0f35 Remove default c++14 flags on clang 3.4 ...
- a flag left by mistake after checking portability on C++1y...
2014-01-28 20:59:05 +01:00
Olivier Parcollet
758c07c87c Correction of last correction....
The construction from c++ should *not* be changed...
2014-01-21 14:29:44 +01:00
Olivier Parcollet
1adf10429f Fix #52 : Correct 6022015
- forgot to correct the call to self.kind (now returning a char, not an
  int), in previous commit.
2014-01-21 13:30:23 +01:00
tayral
1811d53179 Added density for scalar_valued gf (and test thereof) 2014-01-20 17:55:07 +01:00
tayral
2d1dec4c3d Fixed antiperiodicity property of imtime
- the condition p%2 ==1 was wrong if p<0 (never true!)
- added corresponding test (gf_notail)

Conflicts:
	triqs/gfs/imtime.hpp

Fixed by O.P. : already fixed in Laura's pull request ...
2014-01-20 17:54:33 +01:00
Laura Messio
3437c2dfe9 doc: small tutorial for the GF's 2014-01-20 17:49:47 +01:00
Laura Messio
359deae18d correction of a bug in imtime (evaluator_fnt_on_mesh) + corresponding test added 2014-01-20 17:49:47 +01:00
Laura Messio
04cf39a361 deprecated gfs files removed 2014-01-20 17:49:47 +01:00
Olivier Parcollet
b2603dcf3a Fix for clang 1y with gcc lib
- add a workaround for a gcc issue in fisrt_include.
- --> make sure that the first include is :
either a triqs lib
or first_include
2014-01-20 10:50:52 +01:00
Olivier Parcollet
602201527d Fix #51
- The kind() method of mesh should return a char,
like the parameter of the constructor of mesh,
not the C++ corresponding int.
- otherwise, the reduction - construction is broken
and by extension all pickling and then all mpi constructions.
2014-01-17 21:12:24 +01:00
Olivier Parcollet
0f85b08693 add trace for ImmutableMatrix 2014-01-12 20:46:10 +01:00
Olivier Parcollet
92f4df91fe small change in clang-format config. 2014-01-12 15:07:25 +01:00
Olivier Parcollet
6820f4865a gf : target_shape_t. change size_t to int
- to avoid narrowing pbs.
- otherwise {n,n}, with n int does not work, which is crazy.
2014-01-10 21:47:33 +01:00
Olivier Parcollet
0cfb8be29e add one speed test ...
machine dependant, to get an idea...
2014-01-10 15:29:18 +01:00
Olivier Parcollet
eec9a0662a continued : further correction on mac
The issue was the detection of clang version on mac,
depends if packaged by Apple or not...
2014-01-09 19:42:01 +01:00
Olivier Parcollet
8f7180660f Put back the check of compiler version commented for unknown reasons...
Probably a mistake ....
2014-01-09 19:27:55 +01:00
Olivier Parcollet
9474937470 shared_ptr<void> can not be constructed directly in c++14
- Fix for compilation on clang 3.4 in c++1y mode.
2014-01-07 14:33:57 +01:00
Olivier Parcollet
b644b38a6a gf: imfreq. general case, fix python interface
- Fix constructor, now taking n_points like the positive_only case
- Fix python, h5read, for general case (i.e. all frequencies).
2014-01-07 14:30:40 +01:00
Olivier Parcollet
2200e2680f gf: imfreq: fix out of bound product gf imfreq
- gf<cartesian_product<imfreq,imfreq>> was not correct
  when out bounds. Fixed evaluator.
- tensor_proxy : fix the trait for algebra which was incorrect.
- TODO: clean code (repetition, put in mesh some windowing).
2014-01-06 19:16:25 +01:00
tayral
1b3a66af24 Fixed bug out of domain for mesh with positive and negative matsubara frequencies 2014-01-06 16:07:47 +01:00
Olivier Parcollet
53b05ad899 Fix const in apply_on_tuple 2014-01-06 16:07:47 +01:00
Olivier Parcollet
1ecec0b933 gfs: Fix bug in imfreq with <0 freq.
- there was a confusion in gf imfreq, in the new case
where freq can be <0 (non real gf, or for product gf).
- index: is the matsubara n, as in the struct matsubara_freq
  index can be >0 or <0
- linear_index : is the shift from the 0. It is always >0.
  Fixed function to compute it.

- Also changed the construction of mesh_point in the generic iterator.
  Before, was constructed with a mesh point of index 0
  Now, added a new constructor on mesh_point_t, just taking the mesh
  which construct the *first* mesh_point.
  Fixed linear, discrete, product accordingly.
  Added to the documentation of the concepts of gf.
2014-01-05 20:10:33 +01:00
tayral
b8e29192da gfs: Fixed bug in index_to_point. 2014-01-05 16:58:54 +01:00
tayral
cd77520a78 Add doc for tightbinding and bravaislattice. 2013-12-31 15:26:20 +01:00
tayral
c74105636c documentation for tail (python+c++) and for profiling 2013-12-31 14:38:55 +01:00
Michel Ferrero
f7fad85fca Iteration over the doc
This is an iteration over the doc mainly thank to Priyanka.
I fixed another couple of details on the way.
2013-12-31 14:22:00 +01:00
Olivier Parcollet
bdac3e159c work on doc for gf, and details.
- little details : code cleaning, clang formatting,  along
with documentation writing for c++ gf.
- separated the mesh in small class for better doc.
- work on documentation : reorganize specialisation, ...
2013-12-30 22:32:16 +01:00
Olivier Parcollet
59b969dbd3 arrays: fix mapped_function (conj overload)
- conj overload should return complex, as in standard.
- changed the test output for mapped_function.
- fixed make_matrix_view and example in doc.
2013-12-30 22:32:15 +01:00
Olivier Parcollet
5b8113b46a pytriqs: add option to use mpi4py instead of boost.python.mpi
- to choose mpi4py over boost.python.mpi, pass -DPython_use_mpi4py=ON

- boost.mpi stays the default for python, but
  adding the possibility of using mpi4py instead.

- Due to numerous pbs on recent OS X + brew installation.
  boost.mpi does not work (crash in openmpi ??), mpi4py does

- the pytriqs/utility/mpi.py is now configured by the cmake (like
  version.py) to prepare one of the two possibilities.

- TODO:  not tested carefully : to be done in other machines.
2013-12-30 22:32:09 +01:00