Yes, I think I know how to do that.

I want to calculate the LDOS for a *finite* piece of CNT.

I put it in a big bulkconfiguration with vacuum in A, B *and* C direction.

So, there is no periodicity and I only need 1 k-point.

Then I calculate the MolecularEnergySpectrum, which tells me the number of states.

Then I must calculate all those BlochStates.

Finally a need to sum their *absolute values*.

This brings me to the point of another feature:

ATK makes strong use of numpy. Lots of ATK-objects are grid-based data

which is stored in numpy-arrays internally.?

Right now, one can easily calculate sums from those grid-based objects

by just placing a "+" or a "-" in between. The result is another ATK-object

of the same kind. This is *extremly* convenient and one of the strength

of object oriented programming.

Now, wouldn't it be nice to have numpy operations available on

ATK-grid-objects? Like abs, conj, ** (power), ...

If this is not possible, then some important things like abs or conj could

be put into every grid-based object, as a method

(derivatives is already there...).

However, as I workaround I can evaluate the thing at every grid-point and

do whatever with that data. This is a bit slow and I can not save my stuff

to an ATK-nc file, afterwards.