Coverage for /builds/kinetik161/ase/ase/io/octopus/__init__.py: 100.00%

2 statements  

« prev     ^ index     » next       coverage.py v7.2.7, created at 2023-12-10 11:04 +0000

1# Representation of parameters from highest to lowest level of abstraction: 

2# 

3# * Atoms object plus reduced kwargs that specify info not stored in the Atoms 

4# * full dictionary of kwargs incorporating info contained in the Atoms 

5# * series of assignments (names, values). May contain duplicates. 

6# * text in Octopus input file format 

7 

8 

9# Octopus variable types and specification in Python: 

10# 

11# Type Examples Equivalent in Python: 

12# ----------------------------------------------------------------------------- 

13# flag wfs + density 'wfs + density' 

14# float 2.7, 2.7 + pi^2 2.7, 2.7 + np.pi**2 

15# integer 42, rmmdiis 42, 'rmmdiis' 

16# logical true, false, yes, no, ... True, False, 1, 0, 'yes', 'no', ... 

17# string "stdout.txt" '"stdout.txt"' (apologies for ugliness) 

18# 

19# block %Coordinates List of lists: 

20# 'H' | 0 | 0 | 0 coordinates=[["'H'", 0, 0, 0], 

21# 'O' | 0 | 0 | 1 ["'O'", 0, 0, 1]] 

22# % (elemements are sent through repr()) 

23 

24# Rules for input parameters 

25# -------------------------- 

26# 

27# We make the following conversions: 

28# dict of keyword arguments + Atoms object -> Octopus input file 

29# and: 

30# Octopus input file -> Atoms object + dict of keyword arguments 

31# Below we detail some conventions and compatibility issues. 

32# 

33# ASE always passes some parameters by default (always write 

34# forces, etc.). They can be overridden by the user, but the 

35# resulting behaviour is undefined. 

36 

37 

38from ase.io.octopus.input import read_octopus_in 

39 

40__all__ = ['read_octopus_in']