Giter Club home page Giter Club logo

wave_train's People

Contributors

bsch63 avatar jeriedel avatar pgelss avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

wave_train's Issues

Smart limits for y-axis of energy plots

  • Bei TISE wird offenbar der Achsen-Bereich aus den analytischen Lösungen genommen, wenn vorhanden. Also alles bestens!
  • Wenn bei TISE keine analytischen Lösungen vorhanden sind, werden die Werte genommen, die der Nutzer selbst als Attribute von einer Instanz (meist 'dynamics') der TISE-Klasse einsetzt. Ist zwar nicht so komfortabel, aber anders geht es halt nicht. Also auch OK.
  • Bei CEoM ist auch schon alles schön, siehe Abb. 5 in unserem Manuskript.
  • Bei QCMD ist auch schon alles schön, siehe Abb. 6 in unserem Manuskript.
  • Bei TDSE wird offenbar der Energie-Bereich automatisch auf 0...1 gesetzt, siehe Abb. 3 & 4 in unserem Manuskript. Könntest Du (Jerome) das vielleicht noch verbessern? Mir (Burkhard) schwebt vor, einfach den Anfangswert der Energie E_0 zu nehmen (der sollte ja verfügbar sein), und dann ein Intervall von 0.99 E_0 ... 1.01 E_0 zu nehmen, wenn E_0 positiv ist. Oder 1.01 E_0 ... 0.99 E_0 wenn E_0 negativ ist.

Pauli matrices

Use also Pauli matrices as default observables. Calculate (and plot?) their expectation values for every (main!) time step.

Problem with uncertainties

Occasionally, problems arise when calculating quantum-mechanical uncertainties, see *.err files created by 'curta' batch jobs.
Probably, the following line in method observe in class QuantumMechanics is not smart enough:

np.real_if_close ( np.sqrt(self.pos_squa[i,j] - self.position[i,j]**2), tol=TOLERANCE )

and similarly for the momenta

Console output also to logfile

It would be nice to have the console output to be written in parallel to a log-file, for documentation purposes etc. That log-file should have the same filename as the input Python script, but with extension .txt or .log. Hence, in analogy to the image (.png) and animation (.mp4) output that WaveTrain already produces routinely.

Classify Hamiltonians

The available Hamiltonians should be classified by two Boolean attributes|properties:

  • classical: Whether or not a system has a well-defined classical limit. If yes (e.g. class Phonon), then CEoM (classical equations of motion) simulations may be considered as an approximation to full quantum mechanics.
  • bipartite: Whether or not a system is bipartite, i.e. comprising two classes of particles. If yes (e.g. class Coupled), then QCMD (hybrid quantum–classical molecular dynamics) simulations may be considered as an approximation to full quantum mechanics.

The goal of this issue is to replace all queries for the names of classes (Exciton, Phonon, Coupled) by queries for these two attributes|properties. Thus, it should open the way toward designing new classes for other Hamiltonians.

From ACF to absorption spectrum

During TDSE (and QCMD) propagations we are calculating autocorrelation functions (ACFs) which are good for two purposes:

  • Comparison with WavePacket (Matlab/Octave), but only for N not large
  • Calculate absorption spectrum as (power) Fourier transform of ACF

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.