1
0
mirror of https://github.com/paboyle/Grid.git synced 2024-11-13 01:05:36 +00:00

Update to TODO list

This commit is contained in:
Peter Boyle 2015-04-25 13:04:26 +01:00
parent c5fa18eb20
commit 9dacdc947d

64
TODO
View File

@ -1,5 +1,5 @@
* - BinaryWriter, TextWriter etc... * - BinaryWriter, TextWriter etc...
- protocol buffers? replace xml - protocol buffers? replace xmlReader/Writer ec..
* Stencil operator support -----Initial thoughts, trial implementation DONE. * Stencil operator support -----Initial thoughts, trial implementation DONE.
-----some simple tests that Stencil matches Cshift. -----some simple tests that Stencil matches Cshift.
@ -10,15 +10,14 @@
* CovariantShift support -----Use a class to store gauge field? (parallel transport?) * CovariantShift support -----Use a class to store gauge field? (parallel transport?)
* Consider switch std::vector to boost arrays or something lighter weight * Consider switch std::vector to boost arrays or something lighter weight
boost::multi_array<type, 3> A()... to replace multi1d, multi2d etc.. boost::multi_array<type, 3> A()... to replace multi1d, multi2d etc..
* TensorRemove is a hack, come up with a long term rationalised approach to Complex vs. Scalar<Scalar<Scalar<Complex > > >
QDP forces use of "toDouble" to get back to non tensor scalar. This role is presently taken TensorRemove, but I
want to introduce a syntax that does not require this.
* norm2l is a hack. figure out syntax error and make this norm2. c.f. tests/Grid_gamma.cc * norm2l is a hack. figure out syntax error and make this norm2. c.f. tests/Grid_gamma.cc
* std::vector replacement; * std::vector replacement;
Had to change "reserve" back to "resize" on std::vector in Lattice class. Had to change "reserve" back to "resize" on std::vector in Lattice class.
@ -32,30 +31,47 @@
resize. Find out if valarray or alternative works differently prior to resize. Find out if valarray or alternative works differently prior to
doing this since there may still be something I can use.. doing this since there may still be something I can use..
* Flavour matrices?
* Make the Tensor types and Complex etc... play more nicely. * Make the Tensor types and Complex etc... play more nicely.
* TensorRemove is a hack, come up with a long term rationalised approach to Complex vs. Scalar<Scalar<Scalar<Complex > > >
QDP forces use of "toDouble" to get back to non tensor scalar. This role is presently taken TensorRemove, but I
want to introduce a syntax that does not require this.
* Pauli, SU subgroup, etc..
* Fourspin, two spin project
* su3 exponentiation & log etc.. [Jamie's code?]
TaProj
* Parallel MPI2 IO
* rb4d support.
* Check for missing functionality - partially audited against QDP++ layout
* Optimise the extract/merge SIMD routines; Azusa?? * Optimise the extract/merge SIMD routines; Azusa??
- I have collated into single location at least. - I have collated into single location at least.
- Need to use _mm_*insert/extract routines. - Need to use _mm_*insert/extract routines.
* Conformable test in Cshift routines. * Conformable test in Cshift routines.
* Flavour matrices?
* Pauli, SU subgroup, etc..
* su3 exponentiation & log etc.. [Jamie's code?]
* TaProj
* Fourspin, two spin project --- DONE
* Parallel MPI2 IO
* rb4d support for 5th dimension in Mobius.
* Check for missing functionality - partially audited against QDP++ layout
Algorithms
* LinearOperator
* LinearSolver
* Polynomial
* Eigen
* Pcg
* fPcg
* MCR
* etc..
AUDITS: AUDITS:
* FIXME audit * FIXME audit
@ -68,25 +84,20 @@ AUDITS:
// TODO // TODO
// //
// Base class to share common code between vRealF, VComplexF etc... // Base class to share common code between vRealF, VComplexF etc...
// //
// Unary functions // Unary functions
// cos,sin, tan, acos, asin, cosh, acosh, tanh, sinh, // Scalar<vReal> only arg // cos,sin, tan, acos, asin, cosh, acosh, tanh, sinh, // Scalar<vReal> only arg
// exp, log, sqrt, fabs // exp, log, sqrt, fabs
// //
// transposeColor, transposeSpin, // transposeColor, transposeSpin,
// adjColor, adjSpin, // adjColor, adjSpin,
// //
// copyMask. // copyMask.
// //
// localMaxAbs // localMaxAbs
// //
// Fourier transform equivalent. // Fourier transform equivalent.
* LinearOperator
LinearSolver
Polynomial etc...
====================================================================================================== ======================================================================================================
@ -102,6 +113,8 @@ FUNCTIONALITY:
----- Implement mapping between traceColour and traceSpin and traceIndex<1/2>. ----- Implement mapping between traceColour and traceSpin and traceIndex<1/2>.
* How to do U[mu] ... lorentz part of type structure or not. more like chroma if not. -- DONE * How to do U[mu] ... lorentz part of type structure or not. more like chroma if not. -- DONE
* Twospin/Fourspin/Gamma/Proj/Recon ----- DONE
* subdirs lib, tests ?? ----- DONE * subdirs lib, tests ?? ----- DONE
- lib/math - lib/math
- lib/cartesian - lib/cartesian
@ -133,6 +146,5 @@ FUNCTIONALITY:
* I/O support * I/O support
* NERSC Lattice loading, plaquette test ------- DONE single node * NERSC Lattice loading, plaquette test ------- DONE single node
* Controling std::cout ------- DONE * Controling std::cout ------- DONE