Skip to content

[Dependency] Solver source_hsolver depending back on the method layer #7603

Description

@Critsium-xy

Describe the Code Quality Issue

  • Symptom: includes pw/module_stodft/*, pw/hamilt_pw.h, pw/hamilt_lcaopw.h, lcao/rho_tau_lcao.h.
  • Fix: hsolver should depend only on hamilt's abstract operator interface and the psi container; concrete hamilt_pw/sdft/lcaopw should be wired in via the L2 operator base class polymorphically, injected from above.
  • Acceptance: cut hsolver → pw/lcao.

Additional Context

No response

Task list for Issue attackers (only for developers)

  • Identify the specific code file or section with the code quality issue.
  • Investigate the issue and determine the root cause.
  • Research best practices and potential solutions for the identified issue.
  • Refactor the code to improve code quality, following the suggested solution.
  • Ensure the refactored code adheres to the project's coding standards.
  • Test the refactored code to ensure it functions as expected.
  • Update any relevant documentation, if necessary.
  • Submit a pull request with the refactored code and a description of the changes made.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions