{ "info": { "author": "Peter A. Rose and Jacob J. Krich", "author_email": "peter.rose56@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3 :: Only", "Topic :: Scientific/Engineering :: Physics" ], "description": "# ultrafastultrafast (UF2)\nCode for simulating nonlinear optical spectroscopies of closed systems\n\n## Taking UF2 for a test drive\nTo try this package without installing or downloading the repository,\nfollow this link to see an example jupyter notebook using Google's\nColaboratory: \nhttps://colab.research.google.com/github/peterarose/ultrafastultrafast/blob/master/UF2_Colab.ipynb\n(Note: Google's Coloaboratory gives a warning message about running Jupyter\nnotebooks not authored by Google. When prompted by the warning, select\n\"RUN ANYWAY\", and then click \"YES\" when it asks you if you would like to\nreset all runtimes)\n\nYou should be able to run the whole notebook in about 20 seconds. The final\nplot produced at the bottom is Figure 6a from our paper (JCP:\nhttps://doi.org/10.1063/1.5094062). To run the whole notebook, find the\ndropdown menu \"Runtime\", click on it, and then select \"Run All\".\nAlternatively you can run each cell one at a time by typing Shift+Enter\ninside each cell.\n\n## How to install\nYou can install UF2 without downloading the source code by running \npip install ultrafastultrafast \n\n(Note that UF2 is only written for python 3, so you may need to run\npip3 install ultrafastultrafast if pip points to python 2 on your machine) \n\nIf you would like to install from the source code, you can clone this\nrepository, navigate the repository directory, and run either \npython setup.py install \nor\npip install .\n\nOnce installed, you should be able to use \nimport ultrafastultrafast as uf2 \nNote: you should not need to install this code in order to run any of the\nJupyter notebooks included with this repository. This notebook can be used to\nget an idea of what this code does.\n\n## Dependencies\nnumpy \nmatplotlib \npyfftw \nscipy \npyyaml\n\n## How to Use\nTo take UF2 for a test run without cloning this repository or installing\nit on your system, you can follow the above link to Google Colaboraty, or\nclick on UF2_Colab.ipynb on the github page, and then click on the link\n\"Open in Colab\" at the top of the document. You should be able to run\nthe entire Jupyter notebook in about 20 seconds. It produces the\nisotropically averaged TA spectra shown in Fig 6a of our paper, without\nthe Gaussian linewidth\n\nSee the Jupyter notebook UF2_examples.ipynb for examples of how to use\nthis code to generate perturbative wavepackets, and from there\nthe desired nonlinear spectroscopic signal.\n\nSee the Jupyter notebook RKE_examples.ipynb for exmples of how to use\nthe RK45-Euler method included with this code to generate\nperturbative wavepackets, and from there the desired nonlinear\nspectroscopic signal. The API for both the UF2 algorithm and the\nRKE algorithm is the same.\n\nThe folder example_folder includes the necessary files to simulate\na two-level system coupled to a single harmonic mode of Huang-Rhys\nfactor 0.4^2/2 = 0.08. (UF2 only - see Examples.ipynb)\n\nThe folder dimer_example includes the necessary parameters file,\ncalled simple_params.yaml, to run both the UF2 and RKE algorithms.\nDocumentation describing how to edit and create simple_params.yaml\nfiles to simulate other vibronic systems will be added soon.\n\n# Simulating with your own system\n\nTo use UF2 to calculate spectra for other systems, you must create a\nfolder for the system. You can use the Jupyter notebook Examples.ipynb\nto calcualte the transient absorption signal for your system by simply\nchanging the file_path variable to specify the folder you created,and running\nthe notebook. You can also use the class core.UF2 to write your own code to\ncalculate any n-wave mixing process. See TA_example.py for a 4-wave mixing\nexample, and TA_5th_order_example.py for a 6-wave mixing example.\n\nThe folder describing the system parameters must have the following two files:\n\neigenvalues.npz - a numpy archive with the following keys: \n- 'GSM': containing all eigenvalues in the ground state manifold \n- 'SEM': containing all eigenvalues in the singly excited manifold \n- 'DEM' (optional): containing all eigenvalues in the doubly excited manifold \n\nmu.npz - a numpy archive with the following keys: \n- 'GSM_to_SEM': containing a 3d numpy array with indicies [i,j,k] of the dipole elements\nconnecting the GSM eigenstates (index j) to the SEM eigenstates (index i). The thid index\nk = 0,1,2 corresonds to cartesian coordinates k = x,y,z\n- 'SEM_to_DEM' (optional): containing a 3d numpy array with indicies [i,j,k] of the dipole elements\nconnecting the SEM eigenstates (index j) to the DEM eigenstates (index i). The thid index\nk = 0,1,2 corresonds to cartesian coordinates k = x,y,z\n\nNote: RKE is currently not compatible with systems other than those that can\nbe described by the vibronic_eigenstates package included in this\nrepository. That is not a fundamental limitation, but simply a limitation of\nthe current implementation. Eventually the code will be updated to make it\ncompatible with your own Hamiltonians, just as UF2 is already.", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/peterarose/ultrafastultrafast/", "keywords": "nonlinear optical spectroscopy", "license": "", "maintainer": "", "maintainer_email": "", "name": "ultrafastultrafast", "package_url": "https://pypi.org/project/ultrafastultrafast/", "platform": "", "project_url": "https://pypi.org/project/ultrafastultrafast/", "project_urls": { "Homepage": "https://github.com/peterarose/ultrafastultrafast/" }, "release_url": "https://pypi.org/project/ultrafastultrafast/0.2.2/", "requires_dist": null, "requires_python": ">=3.5", "summary": "Package for simulating nonlinear optical spectra", "version": "0.2.2" }, "last_serial": 5412014, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "b22fe95cdf7c78af62d15f7252cfb327", "sha256": "86243b92403e7274265ebd9a067a7a278be109ce6f4082b2d564876e3f304e5f" }, "downloads": -1, "filename": "ultrafastultrafast-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b22fe95cdf7c78af62d15f7252cfb327", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 72324, "upload_time": "2019-06-11T20:42:08", "url": "https://files.pythonhosted.org/packages/12/b4/f2b2397b6116385f5ecd27c013dbba59b60ec5872c1455c4e33b1972e67a/ultrafastultrafast-0.1.0-py3-none-any.whl" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "b52d6dfb5cd4b3e3528f7cf0b07ebae3", "sha256": "5ff7bb52e308f03a406d8ebf9c4421d783d44c95676765aee1d3407c077813af" }, "downloads": -1, "filename": "ultrafastultrafast-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b52d6dfb5cd4b3e3528f7cf0b07ebae3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 78095, "upload_time": "2019-06-13T19:33:15", "url": "https://files.pythonhosted.org/packages/6e/26/cccace959be533acc82667e13c70e575a24da972a762bf79121a064c014c/ultrafastultrafast-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a3d6b43b36811951ef7dd3affeff19a3", "sha256": "aa1858bf5a9f8814ff82ffd56e430c4551ffc2ce5f38f1e8533f91e987d36512" }, "downloads": -1, "filename": "ultrafastultrafast-0.2.0.tar.gz", "has_sig": false, "md5_digest": "a3d6b43b36811951ef7dd3affeff19a3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 47785, "upload_time": "2019-06-13T19:33:17", "url": "https://files.pythonhosted.org/packages/38/32/9e0d3878faf1822aa31aa547337ae283e7e5c7dccddbd0000e73fe33c4f6/ultrafastultrafast-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "828e0e73db18240bd6ca0757a2430b19", "sha256": "e4b13ff960bf96190b230673be184b3431d4268c36a2eb66528db22d97acc221" }, "downloads": -1, "filename": "ultrafastultrafast-0.2.1.tar.gz", "has_sig": false, "md5_digest": "828e0e73db18240bd6ca0757a2430b19", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 47504, "upload_time": "2019-06-13T19:40:56", "url": "https://files.pythonhosted.org/packages/83/99/c90ab90505832863752e99c045c4c0c6900bb419d9a4b8c86ec51af7096e/ultrafastultrafast-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "8c25f7b1dc0e966a810f9e799a5f6885", "sha256": "e2626ba51b0b94381054439f1c6049246c2ae168178febac9e459bef0a082c48" }, "downloads": -1, "filename": "ultrafastultrafast-0.2.2.tar.gz", "has_sig": false, "md5_digest": "8c25f7b1dc0e966a810f9e799a5f6885", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 47728, "upload_time": "2019-06-17T20:21:46", "url": "https://files.pythonhosted.org/packages/2a/cf/e98bb9c09f3f32a1a01c7516e97493862b4119e1558a9b9d447615c5cc36/ultrafastultrafast-0.2.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8c25f7b1dc0e966a810f9e799a5f6885", "sha256": "e2626ba51b0b94381054439f1c6049246c2ae168178febac9e459bef0a082c48" }, "downloads": -1, "filename": "ultrafastultrafast-0.2.2.tar.gz", "has_sig": false, "md5_digest": "8c25f7b1dc0e966a810f9e799a5f6885", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 47728, "upload_time": "2019-06-17T20:21:46", "url": "https://files.pythonhosted.org/packages/2a/cf/e98bb9c09f3f32a1a01c7516e97493862b4119e1558a9b9d447615c5cc36/ultrafastultrafast-0.2.2.tar.gz" } ] }