User defined kernels #339
-
Hi, thanks for all your work on DEERLab, it's been really interesting to see it evolve over the last few years. One thing I miss from the early versions is the ability to specify user defined kernels, would you be open to adding this feature back in? I often need to parametrically fit parameters other than distance, for example over angle or coupling frequency, and there doesn't seem to be a convenient way to accomplish this in the current API. I've hacked the functionality into my forked copy, if this is a feature you'd be interested in including it might be an interesting jumping-off point. |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments
-
Thanks for the idea! We will need to think carefully about it. From your fork, I see that you implemented an argument into On one hand, since On the other hand, with DeerLab you can now take completely custom functions/models and profit from the new modeling API (see here for help) to construct a custom new model that includes whatever parameters you need. Nevertheless, I am keeping all options open at the moment. To help take the best decision, could you please let us know in your case what kind of parameters and functionality are missing in |
Beta Was this translation helpful? Give feedback.
-
Thanks for getting back to me so quickly! The reason I'd like to be able to define my own kernels is that I work with highly orientationally selective data, but I rarely know which orientations are being excited before fitting the data. This means that it is generally more accurate to fit the inter-spin coupling rather than the inter-spin distance. If I need to get structural information, it is often necessary to simulate a dipolar kernel considering pulse overlap with the spin systems, and thus not just the inter-spin distance but also their relative orientations, resulting in a multi-dimensional kernel with additional distance and angle axes. I was trying to avoid rewriting the rest of |
Beta Was this translation helpful? Give feedback.
Thanks for the idea!
We will need to think carefully about it. From your fork, I see that you implemented an argument into
dipolarkernel
to basically specify an arbitrary function for the elementary dipolar kernel matrix.On one hand, since
dipolarkernel
implements a very specific kind of mathematical model, it would make more sense to add functionality that allows the specification of parameters that are currently fixed rather than allowing any arbitrary function to be defined.On the other hand, with DeerLab you can now take completely custom functions/models and profit from the new modeling API (see here for help) to construct a custom new model that includes whatever parameters you need.