diff --git a/TODO b/TODO index 00fa3341c492c55216644efbf8193eeddbe696b9..f1660c6a750cf167aeedaa73f01cb87ab1d2992f 100644 --- a/TODO +++ b/TODO @@ -1,15 +1,30 @@ Roughly in order of importance. -*-org-*- -* Enhance the line argument of kwant.plotter.plot - It could understand "hopping kinds" in the same way possible_hoppings does. +* Rethink site group equivalence -* Provide nice support for graphene double layers - This could be done by allowing lattices to be shifted, or in some other way. +* Make kwant run on windows -* Benchmark MUMPS and check whether nested dissection would be useful. - If yes, implement it. +* Implement "lead freezing" -* Make kwant objects pickleable. +* Add calculation of current density + +* Consider making the b parameter of _solve_linear_sys a matrix instead of a + list of matrices + +* Find a nice way to organize / deal with ldos or wave_func output when the + number of orbitals per site varies + +* Add a (tutorial?) example with kwant.plotter.map + +* fix physics.noise (docstring, __all__, etc.) + +* Verify that selective plotting works. + +* Write an RGF solver that uses graph/slicer. + +* Add support for easily adding magnetic field to a system. + +* Allow plotting of infinite systems * Use sparse linear algebra to calculate bands However, SciPy's sparse eigenvalues don't seem to work well. @@ -18,9 +33,10 @@ Roughly in order of importance. -*-org-*- The most easy way to do this is increasing the period of the lead. Alternatively, generalize modes and InfiniteSystem format. -* Optionally show site coordinates when plotting a system. +* Benchmark MUMPS and check whether nested dissection would be useful. + If yes, implement it. -* Add support for easily adding magnetic field to a system. +* Make kwant objects pickleable. * "shape" doesn't work for leads when only checking y (and not x) Make it aware of symmetries. @@ -30,24 +46,17 @@ Roughly in order of importance. -*-org-*- way to do it is to sort the sites in finalized builders.) One could than also RLE compress sites in finalized builders. -* Selective plotting (function). - -* Do not save packed sites of neighbors. - -* Consider (optionally) only saving packed sites for which functions are called +* In finalized leads, only keep the sites of the slice. * Generalize InfiniteSystem to multiple directions. * Add support for optimization of lead fundamental domains. * Write a module to generate "functional" random numbers. - This is a good starting point: - http://www.cs.umbc.edu/~olano/papers/GPUTEA.pdf + That module should probably use (hardware accelerated) AES encryption. * Incorprorate efficient correlated disorder using scipy.spatial. -* Write an RGF/SM solver which uses graph/slicer. - * Implement the C solver interface. * Wrap TB_SIM as a solver.