ascii-phonons icon indicating copy to clipboard operation
ascii-phonons copied to clipboard

feature request: non-integer supercell indices / negative ones

Open Fellow-baka opened this issue 6 years ago • 3 comments

  1. I think it would be beneficial allow to use non-integer supercell indices, e.g. for a large and/or messy cells where "1 1 1" cell is too small and "2 2 2" is too big. Also it seem like in case of "1 1 1" supercell any ions with coordinates containing full lattice translations (e.g. if I have ion in origin position, ions with coordinates "1 1 1", "1 0 0", etc.) are not shown , which makes the cell kinda asymmetric and little bit ugly.
  2. I think in many cases users (or at least me) would like to show the "1 1 1" supercell with ions close to outside cell in each direction, e.g. to fully reveal the structural groups. In VESTA we can use negative "supercell" indices to do it, e.g. show all from -0.3 -0.3 -0.3 to 1.3 1.3 1.3. Is it possible to add such a feature to ascii-phonons? I tried to tinker with the code by myself, but to no avail.

Fellow-baka avatar Jun 26 '18 21:06 Fellow-baka

These seem possible. For the moment if I have a big cell I usually go 2 1 2 and move the unit cell to the middle to create a pleasing image.

I think it will be necessary to change how the supercell generation/iteration works a bit; at the moment the code iterates over each atom in each of a series of unit cells, generating the trajectory of movement. This will have to be tweaked to accept partially-occupied cells.

I was worried on first reading that you might be asking for the ability to generate conventional cells with a 3x3x3 supercell matrix. That would be nice to have, but I don't have a lot of confidence with that stuff which seems to usually work by "searching" for repeating atoms in a space.

ajjackson avatar Jul 02 '18 15:07 ajjackson

Sorry if I wasn't clear enough. Here some pictures from VESTA to illustrate the request. I think now the ascii-phonons with -d 1 1 1 option generate the cell shown at top (can't test right now), however the middle one is kinda more familiar/pleasant. Bottom one is for the cases when a little bit of atoms should be shown, e.g. specific bonds/polyhedra. Thanks in advance! fractional_coords

Fellow-baka avatar Jul 02 '18 17:07 Fellow-baka

Thanks for the illustrations. I think from a user viewpoint this should be implemented as a "threshold" distance value for identifying atoms near the edge of the cell.

It probably makes sense to implement fractional supercells at the same time, as both need the same change to the code structure

ajjackson avatar Jul 02 '18 18:07 ajjackson