-
Notifications
You must be signed in to change notification settings - Fork 0
Integrating code into bestie template #3
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
base: main
Are you sure you want to change the base?
Conversation
renamed heuristic functions
Welcome to Codecov 🎉Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests. Thanks for integrating Codecov - We've got you covered ☂️ |
removed plotting inside of the algorithm added plotting in runner.jl using the interim results
…m (RideUnfold, OriginalRide)
version = "0.1.0" | ||
|
||
[deps] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are several dependencies here that are unlikely to be part of the package in the end. These are e.g. CairoMakie, UnfoldSim, or Revise.
I understand that these are needed for package development, but ultimately they are too big of a dependence to be included. You could instead have a playground/ dev environment and then "dev UnfoldRIDE" to your local path in that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, I've switched to using the /test/Project.toml for now, but I'll think about making a dedicated dev environment. It sounds like a good idea.
The main Project.toml should be clean now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I dont see it yet, forgot to push?
moved non module files to test, mainly runner.jl and runner_matlab_samp.jl
version = "0.1.0" | ||
|
||
[deps] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I dont see it yet, forgot to push?
Project.toml
Outdated
Distributions = "0.25.117" | ||
FFTW = "1.8.1" | ||
Parameters = "0.12.3" | ||
Peaks = "0.5.3" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Peaks = "0.5.3" | |
Peaks = "0.5" |
don't fix on bugfix versions, but feature / major versions
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not sure if you need to address everything, and some stuff is for later review, but a bit of work still there.
One of the most important things for now are the documentation and the docstrings. This can be a different PR though, and can be done after you finish writing the thesis.
src/ride/ride_structs.jl
Outdated
|
||
abstract type RideModus end | ||
struct RideOriginal <: RideModus end | ||
struct RideUnfold <: RideModus end |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
struct RideUnfold <: RideModus end | |
struct UnfoldRide <: RideModus end |
For consistency, I would probably keep this the same as in Unfold.jl (where the types are names e.g. UnfoldLineraModel
)
But then you'd have to rename RideOriginal to OriginalRide
as well I guess
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
renamed them to ModusRide, OriginalRide and UnfoldRide
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can I propose AbstractRIDE, UnfoldRIDE and ClassicRIDE / OriginalRIDE?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree with Bene, that would make it more clear
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure, that works. I think I like ClassicRIDE more than OriginalRIDE.
@debug "Running RIDE algorithm with cfg: $cfg" | ||
## data_preparation | ||
data_reshaped = reshape(data, (1, :)) | ||
evts_s = @subset(evts, :event .== 'S') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be more general. You usually can't assume people call their events S or R. Especially given the char type.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's ok for the initial push though. Can be refactored later
src/ride/ride_unfold_algorithm.jl
Outdated
@@ -0,0 +1,158 @@ | |||
function ride_algorithm(Modus::Type{RideUnfold}, data, evts, cfg::RideConfig) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's good practice to directly write some docstrings with the function.
src/ride/ride_original_algorithm.jl
Outdated
@@ -0,0 +1,232 @@ | |||
function ride_algorithm(Modus::Type{RideOriginal}, data, evts, cfg::RideConfig) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please provide docstrings with the functions; for exported functions like here use:
https://unfoldtoolbox.github.io/UnfoldSim.jl/previews/PR138/developer_docs/#Docstring-templates
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pleas comment on what is happening
…l testing cleaned up Project.toml and test/Project.toml
Co-authored-by: René Skukies <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some more comments and then we can merge ;)
And then tackle documentation 🐙
Project.toml
Outdated
Revise = "3.7.2" | ||
StableRNGs = "1.0.2" | ||
Statistics = "1.11.1" | ||
CairoMakie = "0.13" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think you need a compat for CairoMakie if it's not part of you package ;)
src/ride/ride_structs.jl
Outdated
abstract type RideModus end | ||
struct RideOriginal <: RideModus end | ||
struct RideUnfold <: RideModus end | ||
abstract type ModusRide end |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
abstract type ModusRide end | |
abstract type AbstractRide end |
As Bene suggested I would rename this
src/ride/ride_structs.jl
Outdated
struct OriginalRide <: ModusRide end | ||
struct UnfoldRide <: ModusRide end |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
struct OriginalRide <: ModusRide end | |
struct UnfoldRide <: ModusRide end | |
struct OriginalRide <: AbstractRide end | |
struct UnfoldRide <: AbstractRide end |
added function to run the classic version one time for every channel modified the unfold version to be able to work with multiple channels as input
ClassicRIDE just runs multiple times, once for each channel, then outputs a Vector of RideResults UnfoldRIDE adapted to handle multiple channels throughout the algorithm
wrote tutorial code for data simulation
…the size of one epoch changed output C_latencies to present latencies from stimulus onset instead of latencies from epoch onset adjusted plotting to work with new outputs
changed UnfoldModeRIDE and ClassicRIDE parameters to UnfoldMode and ClassicMode and AbstractMode
fixed a bug in heuristic2
…de_classic_algorithm.jl and ride/ride_classic_methods.jl
deleted unused code
updated index.md
Multi channel processing + Various changes
Related issues
Closes #
Checklist