Output from the Atoms object is handled by the Write method. Note that this is capitalized to avoid any possible confusion (by perl or by a syntax highlighting text editor) with perl's write function, as shown in this example:
- #!/usr/bin/perl use Demeter;
- my $atoms = Demeter::Atoms->new(file => "ybco.inp");
- print $atoms->Write("feff6");
There are several output targets, which are formatted using templates from the Atoms template set. The output targets, i.e. the arguments of the Write method, that come with DEMETER are:
title = YBCO: Y Ba2 Cu3 O7 space = P M M M a = 3.82300 b = 3.88600 c = 11.68100 alpha = 90.00000 beta = 90.00000 gamma = 90.00000 rmax = 5.20000 core = cu2 shift = atoms # el. x y z tag Y 0.50000 0.50000 0.50000 Y Ba 0.50000 0.50000 0.18400 Ba Ba 0.50000 0.50000 0.81600 Ba Cu 0.00000 0.00000 0.00000 cu1 Cu 0.00000 0.00000 0.35600 cu2 Cu 0.00000 0.00000 0.64400 cu2 O 0.00000 0.50000 0.00000 o1 O 0.00000 0.00000 0.15800 o2 O 0.00000 0.00000 0.84200 o2 O 0.00000 0.50000 0.37900 o3 O 0.00000 0.50000 0.62100 o3 O 0.50000 0.00000 0.37700 o4 O 0.50000 0.00000 0.62300 o4
## --*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*-- ## total mu*x=1: 8.160 microns, unit edge step: 23.243 microns ## specific gravity: 6.375 ## --*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*-- ## normalization correction: 0.00046 ang^2 ## --*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--*--
# title = YBCO: Y Ba2 Cu3 O7 # space = P M M M # a = 3.82300 b = 3.88600 c = 11.68100 # alpha = 90.00000 beta = 90.00000 gamma = 90.00000 # rmax = 5.20000 core = cu2 # shift = # atoms # # el. x y z tag # Y 0.50000 0.50000 0.50000 Y # Ba 0.50000 0.50000 0.18400 Ba # Cu 0.00000 0.00000 0.00000 cu1 # Cu 0.00000 0.00000 0.35600 cu2 # O 0.00000 0.50000 0.00000 o1 # O 0.00000 0.00000 0.15800 o2 # O 0.00000 0.50000 0.37900 o3 # O 0.50000 0.00000 0.37700 o4 Spacegroup P M M M (#47) Schoenflies: D_2h^1 Full symbol: p 2/m 2/m 2/m New symbol :Thirtyfive : Nicknames : Common shift vector: Bravais translations: 8 positions: x y z -x -y z -x y -z x -y -z -x -y -z x y -z x -y z -x y z
It is certainly possible to make output templates for other cluster formats, such as alchemy or xyz. Indeed, this was a stadard part of ATOMS before DEMETER. I eventually intend to integrate OpenBabel with DEMETER's FEFF capabilities, which will obviate the need to write ATOMS templates for other cluster formats.
A method of the Feff object to directly import an Atoms object without needing to write and read a feff.inp file.