示例#1
0
    # 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()
示例#2
0
    # 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()
示例#4
0
        # 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()