Skip to content

A one stop flask app for all your approach curve fitting experiments.

License

Notifications You must be signed in to change notification settings

bjralexandru/SECM_Fitter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SECM Approach Curve Fitter

A one-stop solution for all your Scanning Electrochemical Microscopy approach curve experiments

Made with - Python Made with - Chart.js Made with - Flask

[NEW-2] To avoid cloud costs I've taken down the deployment, but can spin it up anytime. Just ask :)

With this project, I intended to build a tool that we can use within our lab for the experiments concerning the approach curves obtained with the Scanning Electrochemical Microscopy instrumentation.

What was the problem?

In a classical workflow, I'd extract the data from the acquisition software of the equipment, bring it to my workstation and perform some cleaning before attempting to perform a non-linear least-square fitting on it. The problem resides in the fact that I'd end up with a bunch of excel files for each series of approach curves, which made going over past experiments pretty tedious and relies on my capacity to stay organized.

How is this application addressing the shortcoming?

First, it is a user-based web application, so anyone who wishes to sign up gets a private space where he/she can upload his/her data, fit the approach curves one at a time, extract the parameters of interest and also get a graphical representation of the goodness of fit.

Data should be formatted such that it has 3 columns without headers: first for the index, second for the distance (in microns), and third for the current (in nA). After uploading the .xls or .csv file the user provides the values for the parameters used in his/her particular experiment and fits his/her dataset.

Moreover, when someone wishes to go over past results or verify something, he/she can go to the 'Query Data' tab and scroll through all his/her past experiments.

The function used for the generation of the theoretical current values comes from an article written by R.Cornut and C.Lefrou.

As of now, it uses a basic SQLite database for the user's information and the .xls/.csv files are saved locally. I'm currently searching for solutions to put it live either on Heroku or Railway and I'll switch to PostgreSQL for the user's info and maybe a blob storage or bucket for the files.

❗🔥 [LE] Managed to transfer the user's log-in info to a PostgreSQL DB provided on the Railway hosting platform, and the processing and storage of files was achieved on an Azure Blob Storage using a free-plan which I closed to avoid triggerind supplementary costs.

Help and feedback are very much appreciated!