-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Description
- Implement Fitting Layer
- Implement a dedicated layer in the application responsible for managing the fitting process.
- Fitting layer should implement multithreading options, allowing users to specify the number of threads to optimize performance.
- Ensure the fitting layer can be easily extended or modified for future enhancements.
Be aware of multithreading/-processing difference across Windows, Linux, and MacOS.
-
Backend Enhancements
- Backend inputs:
- Number of threads
- Parameter boundaries
- Fitting model (e.g., dye-alone, IDA, DBA, or GDA)
- Supplementary information (e.g., dye, experiment protocol, etc.)
- Backend outputs:
- Trajectories: Return the computed trajectories as part of the results.
- Optimal parameter set: Provide the best-fit parameters as a list for further analysis or use.
- Backend inputs:
-
Loss Function Refactoring
- Refactor all loss functions to accept parameters strictly as a list for consistency.
- Package any additional information required by the loss functions into a dedicated class, for clean and maintainable code.
- Document the new structure and usage patterns for developers.
-
Documentation and Testing
- Add documentation to the fitting layer and backend.
- Ensure that all features are covered by unit tests, including edge cases and error handling.
- Create a comprehensive test suite to validate the fitting process across different scenarios.
-
Shipping the App
- Consider 'compiling' the app using Nuitka for better performance. If it doesn't work, try cs_freeze. Last resort, stick to PyInstaller.
- Write a README file with a quick start guide.
Reactions are currently unavailable