Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FLiMESolve #2186

Open
wants to merge 90 commits into
base: master
Choose a base branch
from
Open

FLiMESolve #2186

wants to merge 90 commits into from

Commits on Feb 7, 2023

  1. Version 5.0.0a1

    hodgestar committed Feb 7, 2023
    Configuration menu
    Copy the full SHA
    b9a7b25 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b51c6d0 View commit details
    Browse the repository at this point in the history

Commits on Mar 28, 2023

  1. Created flimesolve.py

    magnamancer committed Mar 28, 2023
    Configuration menu
    Copy the full SHA
    945bea9 View commit details
    Browse the repository at this point in the history

Commits on May 11, 2023

  1. Added QuickSolve

    magnamancer committed May 11, 2023
    Configuration menu
    Copy the full SHA
    ee6ac8d View commit details
    Browse the repository at this point in the history

Commits on May 13, 2023

  1. Configuration menu
    Copy the full SHA
    445cb41 View commit details
    Browse the repository at this point in the history

Commits on May 16, 2023

  1. Configuration menu
    Copy the full SHA
    d28f431 View commit details
    Browse the repository at this point in the history

Commits on May 21, 2023

  1. Reworked FLiMESolve

    Reconstructed FLiMESolve and FLiMESolver to play more nicely with other QuTiP functions. Wrote FLiMESolver into the correlation tab, but had to add taulist as an input into the _make_solver function.
    magnamancer committed May 21, 2023
    Configuration menu
    Copy the full SHA
    f86ef3a View commit details
    Browse the repository at this point in the history

Commits on May 26, 2023

  1. Experimental Stuff to rework FLiMESolv/er

    Trying to rework the time list stuff in FlimeSolve/er to work better with QuTiP. Namely, autogeneration of the time list to create the rate matrix & trying to avoid time list in solver.run so I don't have to do anything kludgey to get the modes in an expedient way
    magnamancer committed May 26, 2023
    Configuration menu
    Copy the full SHA
    7ce7747 View commit details
    Browse the repository at this point in the history
  2. mode table in solver.run() generalized

    Rewrote the mode table in solver.run() to be found in a slightly slower, but much more generalized fashion
    magnamancer committed May 26, 2023
    Configuration menu
    Copy the full SHA
    0152666 View commit details
    Browse the repository at this point in the history

Commits on Jun 15, 2023

  1. Nyquist Constraint & E_ops

    Figured out how to do Expectation operators with my construction of the solvers, and I added a constraint the to the available frequencies in the relaxed secular approx. based on the Nyquist theorem.
    magnamancer committed Jun 15, 2023
    Configuration menu
    Copy the full SHA
    678bc69 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #1 from magnamancer/Floquet-Beta

    Floquet beta
    magnamancer committed Jun 15, 2023
    Configuration menu
    Copy the full SHA
    b938432 View commit details
    Browse the repository at this point in the history

Commits on Jun 26, 2023

  1. Working

    magnamancer committed Jun 26, 2023
    Configuration menu
    Copy the full SHA
    8d4a5fb View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c057aa0 View commit details
    Browse the repository at this point in the history
  3. Added to documentation

    Added flimesolve to dynamics-floquet documentation, and added floquet_ex4 as an example usage (identical to floquet_ex3 with exception of use of  flimesolve instead of fmmesolve)
    
    Added towncrier changelog...I think
    magnamancer committed Jun 26, 2023
    Configuration menu
    Copy the full SHA
    31aff66 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d4528bf View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    e581f2f View commit details
    Browse the repository at this point in the history
  6. Update floquet.py

    Got rid of a few commented lines that were not useful
    magnamancer committed Jun 26, 2023
    Configuration menu
    Copy the full SHA
    bbe99cd View commit details
    Browse the repository at this point in the history
  7. Deleted Working Scripts

    Deleted folder of scripts I'm using to write a paper about this solver
    magnamancer committed Jun 26, 2023
    Configuration menu
    Copy the full SHA
    6f55e6e View commit details
    Browse the repository at this point in the history

Commits on Jun 27, 2023

  1. First pass at Fixing Code Issues

    I fixed linting, extra spacing, and blank line issues. Moved all new functions to flimesolve.py. Replaced scipy functions with Numpy equivalents. Fixed issues in correlation.py by updating to my most current version, which should just introduce flimesolve.py as an additional solver.
    magnamancer committed Jun 27, 2023
    Configuration menu
    Copy the full SHA
    a186139 View commit details
    Browse the repository at this point in the history
  2. Fixed small comment issue

    Commented out a [0] in line 91 for some reason. I uncommented it now to bring it better in line with correlation.py
    magnamancer committed Jun 27, 2023
    Configuration menu
    Copy the full SHA
    e37df3b View commit details
    Browse the repository at this point in the history
  3. Merge pull request #3 from magnamancer/Fixing-Code-Format

    Fixing code format
    magnamancer committed Jun 27, 2023
    Configuration menu
    Copy the full SHA
    c7dec85 View commit details
    Browse the repository at this point in the history
  4. Update qutip/solver/correlation.py

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed Jun 27, 2023
    Configuration menu
    Copy the full SHA
    09b40eb View commit details
    Browse the repository at this point in the history
  5. Update doc/guide/dynamics/dynamics-floquet.rst

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed Jun 27, 2023
    Configuration menu
    Copy the full SHA
    a73b12c View commit details
    Browse the repository at this point in the history
  6. Update qutip/solver/correlation.py

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed Jun 27, 2023
    Configuration menu
    Copy the full SHA
    cf67e6b View commit details
    Browse the repository at this point in the history
  7. Update doc/guide/scripts/floquet_ex3.py

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed Jun 27, 2023
    Configuration menu
    Copy the full SHA
    e8ca4f3 View commit details
    Browse the repository at this point in the history
  8. PEP8 style formatting

    Used built-in autoformat in Spyder and then pycodestyle afterwards to fix code format to PEP8 guidelines.
    magnamancer committed Jun 27, 2023
    Configuration menu
    Copy the full SHA
    ed9b58e View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    6401f33 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    72ff3c9 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    e3c0ec8 View commit details
    Browse the repository at this point in the history
  12. CodeClimate Changes

    Made a few changes caught by CodeClimate on Github
    magnamancer committed Jun 27, 2023
    Configuration menu
    Copy the full SHA
    b9e1f5d View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    8cac396 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    49967c1 View commit details
    Browse the repository at this point in the history

Commits on Jul 6, 2023

  1. Configuration menu
    Copy the full SHA
    3c7df72 View commit details
    Browse the repository at this point in the history
  2. Fixed Dimensions, Added tests

    Fixed the dimensionality for FLiMESolve to properly deal with tensor product Hamiltonians, added flimesolve_test to the testing folder
    magnamancer committed Jul 6, 2023
    Configuration menu
    Copy the full SHA
    31f9564 View commit details
    Browse the repository at this point in the history
  3. Update flimesolve.py

    magnamancer committed Jul 6, 2023
    Configuration menu
    Copy the full SHA
    83db869 View commit details
    Browse the repository at this point in the history
  4. Reverted Some Changes

    Went through the differences between my master branch and the master branch on GitHub, reverted changes that didn't have to do with my code.
    magnamancer committed Jul 6, 2023
    Configuration menu
    Copy the full SHA
    96ba98c View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    fc48797 View commit details
    Browse the repository at this point in the history
  6. flimesolve small fix

    Fixed a small formatting issue in flimesolve
    magnamancer committed Jul 6, 2023
    Configuration menu
    Copy the full SHA
    ca52eb9 View commit details
    Browse the repository at this point in the history

Commits on Jul 11, 2023

  1. Update doc/guide/scripts/floquet_ex3.py

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed Jul 11, 2023
    Configuration menu
    Copy the full SHA
    91c0e26 View commit details
    Browse the repository at this point in the history
  2. Update qutip/tests/solver/test_flimesolve.py

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed Jul 11, 2023
    Configuration menu
    Copy the full SHA
    3174af8 View commit details
    Browse the repository at this point in the history

Commits on Jul 22, 2023

  1. Reduce Rate Matrix Build Speed

    Killed/Simplified the Kronecker Deltas in the rate matrix building loop to reduce the number of calculations by...I think a couple orders of magnitude? Much faster now.
    magnamancer committed Jul 22, 2023
    Configuration menu
    Copy the full SHA
    90f03ec View commit details
    Browse the repository at this point in the history

Commits on Aug 11, 2023

  1. Rebuilt R(t) for loop - much faster

    Rebuilt the rate matrix for loop to use masks instead of a for loop. Takes roughly 2% as long to construct, now.
    magnamancer committed Aug 11, 2023
    Configuration menu
    Copy the full SHA
    a0dad1e View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2023

  1. Format Update

    Updated some formatting, commenting, and variable explanations to make code more legible and to better align with PeP8
    magnamancer committed Aug 15, 2023
    Configuration menu
    Copy the full SHA
    d0e2a30 View commit details
    Browse the repository at this point in the history

Commits on Aug 28, 2023

  1. Fixed Simon's Comments

    magnamancer committed Aug 28, 2023
    Configuration menu
    Copy the full SHA
    4082922 View commit details
    Browse the repository at this point in the history

Commits on Sep 1, 2023

  1. Updated Rate Matrix Build

    Updated the Rate Matrix to use nothing but masks instead of a kludgy combination of masks and for loops. The end result is slightly faster (not as much as I had hoped, to be honest), and looks a lot cleaner.
    magnamancer committed Sep 1, 2023
    Configuration menu
    Copy the full SHA
    5ecdd28 View commit details
    Browse the repository at this point in the history

Commits on Sep 6, 2023

  1. Fixed Fmodes Anti-Transpose Issue

    For some reason, the Floquet Modes started getting wonky when they were stacked into an array using the old method I had that I think Eric just brought forward. When Nt (the number of points in one period of the Hamiltonian) was brought high enough, the modes ended up transposes around the anti-diagonal of the Hdim x Hdim single-time arrays. No idea why, but using the built in '.to_floquet_basis' function, while slightly slower, seems to have fixed the issue.
    magnamancer committed Sep 6, 2023
    Configuration menu
    Copy the full SHA
    c256bf3 View commit details
    Browse the repository at this point in the history

Commits on Nov 29, 2023

  1. Fixed Some Errors

    Fixed some issues including but not limited to:
    Floquet transformation on collapse operators now goes to the MODE basis and not the STATE basis
    Incorrect Nyquist limit filter removed - I had the wrong conceptualization here
    magnamancer committed Nov 29, 2023
    Configuration menu
    Copy the full SHA
    b84e6bd View commit details
    Browse the repository at this point in the history

Commits on Jan 3, 2024

  1. Update flimesolve.py

    magnamancer committed Jan 3, 2024
    Configuration menu
    Copy the full SHA
    16c9d55 View commit details
    Browse the repository at this point in the history

Commits on Jan 4, 2024

  1. Moved c_op_rates

    Moved c_op_rates in the time dependent flimesolve to a more "central" location.
    magnamancer committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    31c78c5 View commit details
    Browse the repository at this point in the history

Commits on Jan 29, 2024

  1. Fixed Abs Issue

    Fixed issue in included_delta to include the absolute value arguments. Fixes it such that TD FLiME no longer returns worse results than TI FLiME
    magnamancer committed Jan 29, 2024
    Configuration menu
    Copy the full SHA
    dc6906b View commit details
    Browse the repository at this point in the history

Commits on Feb 7, 2024

  1. Updated flimesolve

    Updated the "create_rhs" method in FLiMESolver so that it actually appends the correct frequencies to each rate matrix slice. Also updated the rate matrix list construction to be slightly less redundant.
    magnamancer committed Feb 7, 2024
    Configuration menu
    Copy the full SHA
    9f3d3ce View commit details
    Browse the repository at this point in the history

Commits on Feb 22, 2024

  1. Update flimesolve.py

    Fixed an issue where the state evolution would "switch" (i.e. ground state decaying, excited state growing) in a pulsed system. Also cleaned up after myself a bit.
    magnamancer committed Feb 22, 2024
    Configuration menu
    Copy the full SHA
    58492df View commit details
    Browse the repository at this point in the history

Commits on Feb 24, 2024

  1. Fixed FFTshift Issue(?)

    Took the fftshift of the collapse operator FFT, which seems to have fixed the "wiggly coherences" issue (along with fixing some previous basis transformations to compensate). Also cleaned up after myself a bit and added documentation to _floquet_mode_table and _floquet_state_table
    magnamancer committed Feb 24, 2024
    Configuration menu
    Copy the full SHA
    d5ae8e3 View commit details
    Browse the repository at this point in the history

Commits on Feb 28, 2024

  1. Fixed Transformation Issue

    Fixed an issue with a misplaced negative sign in the quasienergy lists used to construct the rate matrix.
    magnamancer committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    62e1d01 View commit details
    Browse the repository at this point in the history

Commits on Apr 1, 2024

  1. Merging Master to Update

    magnamancer committed Apr 1, 2024
    Configuration menu
    Copy the full SHA
    00f39ad View commit details
    Browse the repository at this point in the history
  2. Fixing Issues

    Fixed Most of Eric's notes (not sure how to fix the step issue yet), and reformatted flimesolve.py to Black
    magnamancer committed Apr 1, 2024
    Configuration menu
    Copy the full SHA
    d35128a View commit details
    Browse the repository at this point in the history

Commits on Apr 7, 2024

  1. c_ops update and options fix

    Changed c_ops so that it should now accept collapse operators in the exact same manner as mesolve()
    
    Changed initial options in flimesolve() from 'None' to '{}' i.e. an empty dictionary. This fixed an issue with trying to set the options indirectly, e.g. through a correlation function.
    magnamancer committed Apr 7, 2024
    Configuration menu
    Copy the full SHA
    c5c0ca7 View commit details
    Browse the repository at this point in the history
  2. Update flimesolve.py

    magnamancer committed Apr 7, 2024
    Configuration menu
    Copy the full SHA
    6af1c82 View commit details
    Browse the repository at this point in the history
  3. bugfix Qobj typing

    Removed typing from QObj initialization
    magnamancer committed Apr 7, 2024
    Configuration menu
    Copy the full SHA
    5e7ebe3 View commit details
    Browse the repository at this point in the history
  4. Update correlation.py

    Updated the 'FLiMESolver' solver in 'correlation.py' to reflect changes to inputs in 'flimesolve.py'
    magnamancer committed Apr 7, 2024
    Configuration menu
    Copy the full SHA
    c45e5df View commit details
    Browse the repository at this point in the history

Commits on Apr 17, 2024

  1. Update test_flimesolve.py

    Fixed issues where 'test_flimesolve.py' was using an older version of the 'flimesolve' inputs
    magnamancer committed Apr 17, 2024
    Configuration menu
    Copy the full SHA
    22cc595 View commit details
    Browse the repository at this point in the history
  2. Update tests.yml

    Adding manual workflow option so I can test in my own branch
    magnamancer committed Apr 17, 2024
    Configuration menu
    Copy the full SHA
    7fa1c16 View commit details
    Browse the repository at this point in the history

Commits on Apr 29, 2024

  1. Fixed Documentation Issue

    Fixed documentation issue in dynamics-floquet.rst, and updated it with a short explanation and example of the time_sense argument.
    magnamancer committed Apr 29, 2024
    Configuration menu
    Copy the full SHA
    4e5a62c View commit details
    Browse the repository at this point in the history
  2. Update flimesolve.py

    Forgot to turn the returned Floquet States into a Qobj. Fixed that.
    magnamancer committed Apr 29, 2024
    Configuration menu
    Copy the full SHA
    feda016 View commit details
    Browse the repository at this point in the history

Commits on Apr 30, 2024

  1. Configuration menu
    Copy the full SHA
    3915cdb View commit details
    Browse the repository at this point in the history
  2. Update tests.yml

    magnamancer committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    36ee12b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1201c9d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    3e8efe2 View commit details
    Browse the repository at this point in the history
  5. Update flimesolve.py

    Committing all the changes this time
    magnamancer committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    bdf5e6e View commit details
    Browse the repository at this point in the history
  6. Update doc/guide/dynamics/dynamics-floquet.rst

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    c09e4cd View commit details
    Browse the repository at this point in the history
  7. Update flimesolve.py

    magnamancer committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    de3f937 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    6c4ec97 View commit details
    Browse the repository at this point in the history
  9. Update __init__.py

    Added flimesolve import
    magnamancer committed Apr 30, 2024
    Configuration menu
    Copy the full SHA
    7be6df2 View commit details
    Browse the repository at this point in the history

Commits on May 2, 2024

  1. Updated test_flimesolve

    Updates test_flimesolve.py to include a test with nonzero time_sense value and to include a test for the correlation function. Also fixed some typos/added a few words in places.
    magnamancer committed May 2, 2024
    Configuration menu
    Copy the full SHA
    39aa803 View commit details
    Browse the repository at this point in the history

Commits on May 3, 2024

  1. Update flimesolve.py

    Fixed some bad documentation on c_ops. Also added a bit more about which method is used depending on time_sense values.
    magnamancer committed May 3, 2024
    Configuration menu
    Copy the full SHA
    69f64a9 View commit details
    Browse the repository at this point in the history
  2. Update test_flimesolve.py

    Updated Correlation test to be much cleaner, more streamlined. Also removed a bunch of unnecessary numpy functions and replaced with QuTiP functions where applicable.
    magnamancer committed May 3, 2024
    Configuration menu
    Copy the full SHA
    0fecc66 View commit details
    Browse the repository at this point in the history

Commits on May 4, 2024

  1. FlimeSolve steady state solver

    Updated Flimesolve with a steady state solver. This uses the rate matrix as an analogue for the Monodromy matrix to find the steady state of the system in the full secular approximation. Not sure if adding in more time-dependence (if possible) would do anything, as I think that would just cause the solution to orbit/rotate around the time independent result.
    magnamancer committed May 4, 2024
    Configuration menu
    Copy the full SHA
    d604e4a View commit details
    Browse the repository at this point in the history
  2. Updated Floquet Examples 4,5

    Attempting to fix the build error.
    magnamancer committed May 4, 2024
    Configuration menu
    Copy the full SHA
    d24adff View commit details
    Browse the repository at this point in the history
  3. Update qutip/tests/solver/test_flimesolve.py

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed May 4, 2024
    Configuration menu
    Copy the full SHA
    9aa533e View commit details
    Browse the repository at this point in the history
  4. Update qutip/tests/solver/test_flimesolve.py

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed May 4, 2024
    Configuration menu
    Copy the full SHA
    821c381 View commit details
    Browse the repository at this point in the history
  5. Update qutip/tests/solver/test_flimesolve.py

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed May 4, 2024
    Configuration menu
    Copy the full SHA
    5fad71d View commit details
    Browse the repository at this point in the history
  6. Update qutip/tests/solver/test_flimesolve.py

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed May 4, 2024
    Configuration menu
    Copy the full SHA
    4cf0adf View commit details
    Browse the repository at this point in the history
  7. Update qutip/tests/solver/test_flimesolve.py

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed May 4, 2024
    Configuration menu
    Copy the full SHA
    09b67b9 View commit details
    Browse the repository at this point in the history
  8. Update qutip/solver/flimesolve.py

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed May 4, 2024
    Configuration menu
    Copy the full SHA
    1216792 View commit details
    Browse the repository at this point in the history
  9. Update qutip/solver/flimesolve.py

    Co-authored-by: Eric Giguère <eric.giguere@calculquebec.ca>
    magnamancer and Ericgig committed May 4, 2024
    Configuration menu
    Copy the full SHA
    586c585 View commit details
    Browse the repository at this point in the history

Commits on May 6, 2024

  1. Removed steady state solver

    Removed the steady state solver to add it in as a separate PR later.
    magnamancer committed May 6, 2024
    Configuration menu
    Copy the full SHA
    e84b4d6 View commit details
    Browse the repository at this point in the history

Commits on May 7, 2024

  1. Update test_flimesolve.py

    Fixed some issues in the correlation function test
    magnamancer committed May 7, 2024
    Configuration menu
    Copy the full SHA
    4854091 View commit details
    Browse the repository at this point in the history

Commits on May 14, 2024

  1. Update flimesolve.py

    Fixed an fftshift causing state decay to move backwards. This was already fixed and made its way back in somehow. I...don't know.
    magnamancer committed May 14, 2024
    Configuration menu
    Copy the full SHA
    9db451b View commit details
    Browse the repository at this point in the history

Commits on May 20, 2024

  1. Adding Back in the FFT

    The FFT is the only way to bring FLiMESolve to agree with MESolve. Additionally, FMMESolve displays the same issue as FLiMESolve when the driving amplitude is brought to zero. This makes me think that there's an eigenvalue/vector ordering issue here. Probably degeneracies....somewhere? It's also the only way to get all the indices to have signs that agree with the theoretical FLiMESolve.
    magnamancer committed May 20, 2024
    Configuration menu
    Copy the full SHA
    80cd2fa View commit details
    Browse the repository at this point in the history

Commits on May 23, 2024

  1. Update flimesolve.py

    Fixed FFTshift issue third time. Needed to flip the FFT'd collapse operators to get decay moving in the proper direction. Now FLiMESolve relaxes to MESolve for both pulsed and CW systems, and it even decays to zero like it should.
    magnamancer committed May 23, 2024
    Configuration menu
    Copy the full SHA
    20f17ab View commit details
    Browse the repository at this point in the history