Code Monkey home page Code Monkey logo

molmag_ac_gui's Introduction

molmag_ac_gui's People

Contributors

eandklahn avatar

Watchers

 avatar

molmag_ac_gui's Issues

Make reading of new types of data files consistent

Currently, I'm reading new types of headers by making the program conform to the type of header - I should probably change it, so that the header is reformatted into a standard form that is then always used by the program

Split code into folders for different objects

Instead of having a file called "dialogs", we should have a folder called "dialogs" with each custom dialog getting its own file.

And the same for other general things. A folder called "exceptions", where each custom exception is given its own file.

Similarly, let's collect the individual tab widgets in separate files in their own folder "tabs"

"process_ac.py" might still be it's own file in the "molmag_ac_gui"-folder, but we should also figure out what to do here. It is intended as a file that can be imported on its own with functions that are useful for scripting.

"utility.py" could be split into the other files, based on where these functions are useful.

Ability to choose guesses for fitting parameters manually

It should be possible to choose a set of fitting parameters manually when doing fitting of relaxation times.

Idea: when doing a fit, the parameters that were automatically chosen should be presented in a subclass of QDialog. The parameters can then be inspected and changed if need be, before they are passed on to fitting by QDialog.accept()

Unused fitting parameters should be zero in Data analysis tab

Currently, when some parameters are not used in the fitting procedure in the Data analysis tab, the guess value will still be shown in the fitting window. They are not used in the calculation, since the use parameter is set to zero, but it might confuse the user. These unused values should be zero in the window.

Make the plot of fitted χ' and χ'' smoother

After fitting χ' and χ'' in data treatment, the plot of the fitted data only shows the given function in the data points that are measured (i.e. for freq vs. χ', χ' is only calculated for each measured frequency, but it should be in a linspace in the frequency range). This will gives bumbs around the original datapoints. The plots can be smoothed out by calculating the function in additional data points

Add functionality to load other ac data files than ppms

Currently, only ppms data files can be opened in data treatment tab. It should be possible to also open ac data files from SQUID (MPMS3). The function should use the second line of data file to identify the file type. This functionality is also usefull when we will implement DC functionality

Make a data structure that holds file-related information

Instead of having "raw_df", "used_T", "not_used_T" and so on be attributes of the GUI MainWindow itself, there should be a data structure, so that accessing these variables would be something like

self.data.raw_df
self.data.used_T

In the process, can we come up with a consistent naming scheme for variables in the data?

Make a temperature axis in data analysis

Make a temperature axis in the top of the plotting window in data analysis. This will make it easier for the user to decide which temperature range to fit in

data is not grouped correctly when looking at frequencies

Currently, the data loading procedure is looking at number of frequencies by looking at the length of the set() of all frequencies, and that is then used to separate the data into blocks of equal size.
This assumes that the data is ordered into neat blocks, so if that is not the case, the data is grouped in wrong temp subsets.

Save and calculate DC data in a format readable by PHI

To work with DC-data, many users use PHI to fit D and E parameters. It would be nice to have an option to get files out in the PHI format, i.e. _sus.exp and _mag.exp files (depending on the input data given by the user). This requires some manipulation of the units of moment and susceptibility.

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.