[go: up one dir, main page]

Menu

#212 Various Python interface improvements

0.4
open
nobody
None
nobody
2024-05-10
2021-05-28
Ulf Lorenz
No
What and Why

Currently, the Python interface follows the C++ interface closely. We could consider changing this so that the Python interface is more Python-esque.

This is a major change of direction, because it will disalign the two interfaces, and possibly make Wavepacket a pure Python library.

Possible improvements:

  • use a Python naming scheme (e.g., snake_case for function names)
  • use iterators for iteration instead of requesting elements explicitly or use Python properties and lists (e.g., "for dof in grid.dofs" or "grid.dof[0]" instead of "grid.getDof(0)")
  • check if it is possible to generate a .pyi file for in-Python help support
  • setting of plot axis labels and scalings: make more consistent for all drawers. Who gets the data?

Other, just as placeholders because they fit nowhere:
* check that all Python code (demos) follows usual Python conventions
* update the FemtoChem/Interferometry python demo to also plot the results; update the demo wiki with the plots

Discussion

  • Ulf Lorenz

    Ulf Lorenz - 2021-05-28
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -7,4 +7,4 @@
     Possible improvements:
    
     * use a Python naming scheme (e.g., snake_case for function names)
    -* use iterators for iteration instead of requesting elements explicitly or use Python properties and lists (e.g., "for dof in grid.dofs" or "grid.dof[0]" instead of "grid.getDof(0)")
    +* use iterators for iteration instead of requesting elements explicitly or use Python properties and lists (e.g., "for dof in grid.dofs" or "grid.dof\[0\]" instead of "grid.getDof(0)")
    
     
  • Ulf Lorenz

    Ulf Lorenz - 2021-11-05
    • Milestone: Backlog --> 0.4 goal
     
  • Ulf Lorenz

    Ulf Lorenz - 2023-12-04
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -8,3 +8,5 @@
    
     * use a Python naming scheme (e.g., snake_case for function names)
     * use iterators for iteration instead of requesting elements explicitly or use Python properties and lists (e.g., "for dof in grid.dofs" or "grid.dof\[0\]" instead of "grid.getDof(0)")
    +* Is it possible to create a .pyi file for in-Python help?
    +* check if it is possible to generate a .pyi file for in-Python help support
    
     
  • Ulf Lorenz

    Ulf Lorenz - 2023-12-31
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -8,5 +8,5 @@
    
     * use a Python naming scheme (e.g., snake_case for function names)
     * use iterators for iteration instead of requesting elements explicitly or use Python properties and lists (e.g., "for dof in grid.dofs" or "grid.dof\[0\]" instead of "grid.getDof(0)")
    -* Is it possible to create a .pyi file for in-Python help?
     * check if it is possible to generate a .pyi file for in-Python help support
    +* setting of plot axis labels and scalings: make more consistent for all drawers. Who gets the data?
    
     
  • Ulf Lorenz

    Ulf Lorenz - 2024-04-01
    • Milestone: 0.5 goal --> 0.4
     
  • Ulf Lorenz

    Ulf Lorenz - 2024-05-10
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -10,3 +10,6 @@
     * use iterators for iteration instead of requesting elements explicitly or use Python properties and lists (e.g., "for dof in grid.dofs" or "grid.dof\[0\]" instead of "grid.getDof(0)")
     * check if it is possible to generate a .pyi file for in-Python help support
     * setting of plot axis labels and scalings: make more consistent for all drawers. Who gets the data?
    +
    +Other:
    +* check that all Python code (demos) follows usual Python conventions
    
     
  • Ulf Lorenz

    Ulf Lorenz - 2024-05-10
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -11,5 +11,6 @@
     * check if it is possible to generate a .pyi file for in-Python help support
     * setting of plot axis labels and scalings: make more consistent for all drawers. Who gets the data?
    
    -Other:
    +Other, just as placeholders because they fit nowhere:
     * check that all Python code (demos) follows usual Python conventions
    +* update the FemtoChem/Interferometry python demo to also plot the results; update the demo wiki with the plots
    
     

Log in to post a comment.