- name: Read
  in:
    fileName: "CoulombVertex.yaml"
  out:
    destination: CoulombVertex

- name: Read
  in:
    fileName: "EigenEnergies.yaml"
  out:
    destination: EigenEnergies

- name: DefineHolesAndParticles
  in:
    eigenEnergies: EigenEnergies
  out:
    slicedEigenEnergies: EigenEnergies

- name: SliceOperator
  in:
    slicedEigenEnergies: EigenEnergies
    operator: CoulombVertex
  out:
    slicedOperator: CoulombVertex

- name: VertexCoulombIntegrals
  in:
    slicedCoulombVertex: CoulombVertex
  out:
    coulombIntegrals: CoulombIntegrals

- name: CoupledCluster
  in:
    method: Ccsd
    slicedEigenEnergies: EigenEnergies
    coulombIntegrals: CoulombIntegrals
    slicedCoulombVertex: CoulombVertex
    integralsSliceSize: 100
    maxIterations: 30
    energyConvergence: 1.0E-5
    amplitudesConvergence: 1.0E-5
    mixer:
      type: DiisMixer
      maxResidua: 5
  out:
    energy: CcsdEnergy
    amplitudes: Amplitudes

- name: PerturbativeTriples
  in:
    slicedEigenEnergies: EigenEnergies
    amplitudes: Amplitudes
    coulombIntegrals: CoulombIntegrals
  out:
    energy: AtripEnergy


- name: Read
  in:
    fileName: "DeltaIntegralsHH.yaml"
  out:
    destination: Nij

- name: Read
  in:
    fileName: "DeltaIntegralsPPHH.yaml"
  out:
    destination: DeltaIntegrals

- name: Read
  in:
    fileName: "Mp2PairEnergies.yaml"
  out:
    destination: Mp2PairEnergies

- name: BasisSetCorrection
  in:
    slicedEigenEnergies: EigenEnergies
    amplitudes: Amplitudes
    coulombIntegrals: CoulombIntegrals
    mp2PairEnergies: Mp2PairEnergies
    deltaIntegralsHH: Nij
    deltaIntegralsPPHH: DeltaIntegrals
  out:
    {}


- name: Read
  in:
    fileName: "CoulombVertexSingularVectors.yaml"
  out:
    destination: CoulombVertexSingularVectors

- name: Read
  in:
    fileName: "GridVectors.yaml"
  out:
    destination: GridVectors

- name: Read
  in:
    fileName: "CoulombPotential.yaml"
  out:
    destination: CoulombPotential

- name: FiniteSizeCorrection
  in:
    slicedCoulombVertex: CoulombVertex
    amplitudes: Amplitudes
    coulombVertexSingularVectors: CoulombVertexSingularVectors
    coulombPotential: CoulombPotential
    gridVectors: GridVectors
  out:
    transitionStructureFactor: SF
