# Iterate over all blocks for blockid in iom.get_block_ids(): print("Computing the energies in data block '" + str(blockid) + "'") if iom.has_energy(blockid=blockid): print("Datablock '" + str(blockid) + "' already contains energy data, silent skip.") continue # TODO: Add new algorithms here # We test for an inhomogeneous wavepacket next if iom.has_inhomogwavepacket(blockid=blockid): import EnergiesWavepacket EnergiesWavepacket.compute_energy_inhawp(iom, blockid=blockid) # We test for a homogeneous wavepacket next elif iom.has_wavepacket(blockid=blockid): import EnergiesWavepacket EnergiesWavepacket.compute_energy_hawp(iom, blockid=blockid) # We have no wavepacket, then we try for a wavefunction elif iom.has_wavefunction(blockid=blockid): import EnergiesWavefunction EnergiesWavefunction.compute_energy(iom, blockid=blockid) # If there is also no wavefunction, then there is nothing to compute the energies else: print("Warning: Not computing any energies in block '" + str(blockid) + "'!") iom.finalize()
except IndexError: iom.open_file() # Iterate over all blocks for blockid in iom.get_block_ids(): print("Computing the energies in data block '"+str(blockid)+"'") if iom.has_energy(blockid=blockid): print("Datablock '"+str(blockid)+"' already contains energy data, silent skip.") continue # TODO: Add new algorithms here # We test for an inhomogeneous wavepacket next if iom.has_inhomogwavepacket(blockid=blockid): import EnergiesWavepacket EnergiesWavepacket.compute_energy_inhawp(iom, blockid=blockid, eigentrafo=False) # We test for a homogeneous wavepacket next elif iom.has_wavepacket(blockid=blockid): import EnergiesWavepacket EnergiesWavepacket.compute_energy_hawp(iom, blockid=blockid, eigentrafo=False) # We have no wavepacket, then we try for a wavefunction elif iom.has_wavefunction(blockid=blockid): import EnergiesWavefunction EnergiesWavefunction.compute_energy(iom, blockid=blockid, eigentrafo=False) # If there is also no wavefunction, then there is nothing to compute the energies else: print("Warning: Not computing any energies in block '"+str(blockid)+"'!") iom.finalize()
# TODO: Add new algorithms here # We test for an inhomogeneous wavepacket next if iom.has_inhomogwavepacket(blockid=blockid): import EnergiesWavepacket EnergiesWavepacket.compute_energy_inhawp(iom, blockid=blockid, eigentrafo=False, iseigen=False) # We test for a homogeneous wavepacket next elif iom.has_wavepacket(blockid=blockid): import EnergiesWavepacket EnergiesWavepacket.compute_energy_hawp(iom, blockid=blockid, eigentrafo=False, iseigen=False) # We have no wavepacket, then we try for a wavefunction elif iom.has_wavefunction(blockid=blockid): import EnergiesWavefunction EnergiesWavefunction.compute_energy(iom, blockid=blockid, eigentrafo=False, iseigen=False) # If there is also no wavefunction, then there is nothing to compute the energies else: print("Warning: Not computing any energies in block '" + str(blockid) + "'!") iom.finalize()