HagesLab / OneLayer

One-layer transient PL simulations, but in runnable application form
GNU General Public License v3.0
0 stars 0 forks source link

More flexible time stepping on Detailed Analysis #20

Closed cfai2304 closed 2 years ago

cfai2304 commented 3 years ago

Currently, the time stepping feature on the Detailed Analysis tab has you specify how many time steps you should move at a time. It does this because the data arrays are saved at discrete time steps; it just goes to the part of the data which corresponds to the time step you choose. As a result, there is also a restriction that prevents you from plotting datasets whose time grids are different.

This restriction doesn't make sense because you shouldn't have to remember what time grid you used before to keep your datasets compatible. It would be more intuitive if instead you specified the actual time (e.g. in nanoseconds) you wanted to jump ahead. If the time doesn't line up quite right with the arrays (e.g. your PL data is every 10 nanoseconds but you wanted to see PL at t=15), we can linear interpolate between the two nearest time steps for each dataset using something like scipy.interp1d.

cfai2304 commented 2 years ago

I implemented this along the way while investigating the sequential charge transfer model for the MAPI/Rubrene-DBP module