Git Product home page Git Product logo

pod-schrodinger-equation-solver's Introduction

README File for POD-Schrodinger Equation Solver
2D POD Quantum Dot Solver 
Authors: Martin Veresko and Min-Cheng Cheng

Please cite the following papers if you use any component of this tool:
* M.C. Cheng, A reduced-order representation of the Schrödinger equation, AIP Advances 6, 095121 (2016) https://doi.org/10.1063/1.4963835 
* M. Veresko, M.C. Cheng, Physics-informed reduced-order learning from the first principles for simulation of quantum nanostructures. Sci Rep 13, 6197 (2023). https://doi.org/10.1038/s41598-023-33330-9

The following code will solve the Time Independent Schrodinger equation
using POD. Make sure in your directory in which the code is installed you have all files located https://github.com/CompResearchLab/POD-Schrodinger-Equation-Solver. If you are missing a file or directory from this site the code will not run. The code is divided into three parts: Schro_Solver_QDs.m, POD_Library_Creation.m
and POD_Schro_Solver.m. This first part, Schro_Solver_QDs.m, performs direct numerical simulations (DNSs) to train/collect 
wave function data. The second part, POD_Library_Creation.m generates the POD library. Finally,
POD_Schro_Solver.m will solve the POD Hamiltonian and will plot the error with 
regards to direct numerical simulation.

To run the entire code first you must gather wave function data to train the POD modes.
Hence, you must run Schro_Solver_QDs.m. Next you need to generate the POD modes and the library. Therefore, 
you need to run POD_Library_Creation.m. Finally, to solve the POD solution for a
particular case, you need to run POD_Schro_Solver.m. POD_Schro_Solver.m will put all graphics and results in the 
folder titled Results. Every time you run a new case the data in this folder will be deleted; hence, make sure
you save all data you want to keep from a previous test in another folder. POD_Schro_Solver.m will produce contour
plots, profile plots, a least square error plot, a table of the state energies and a recording of the computational 
time saved via the POD method.

Procedure to run code from start to finish:
1) Run Schro_Solver_QDs.m
2) Run POD_Library_Creation.m
3) Run POD_Schro_Solver.m (You can continue to run this code after training the modes to check different cases)

Usage: The user should only modify Training_Parameters.m and POD_Solver_Parameters.m. Training_Parameters.m 
allows the user to adjust the structure of interest and training parameters.
The file POD_Solver_Parameters.m allows the user to adjust POD-space parameters and plotting
guidelines. Information pertaining to each input is specified as a comment.

Note:
Do not delete the Library folder. Training data, stored modes and POD matrices are grabbed from here.
Sometimes the Schro_Solver_QDs.m program will print everything to the display. Simply running clear will correct this issue.




pod-schrodinger-equation-solver's People

Contributors

mingchengc2019 avatar vereskm avatar

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.