LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Tikhonov regulatization parameter and related fit

Solved!
Go to solution

Hello,

 

I hope the questions I have are not too obvious.

I am trying to fit a DRT aka distribution of relaxation times from impedance data. It requires the use of Tikhonov (or other) techniques because it is an ill conditioned system.

However, I did some stuff, see the attached vi (with an image of the problem I am trying to solve), the results are quite OK, but the Tikhonov parameter that I need to use is much larger than what other programs do.

If you can take a look at my vi, I would be grateful if you can spot an error that leads me to this.

I was trying to calculate also an L-curve, but it's not really an L curve... I may do something wrong.

In addition, I have another question : is there a way to force the solutions to be positive ? (there is no physical meaning for a negative value)

Thanks for any clues,

Regards

 

0 Kudos
Message 1 of 6
(1,084 Views)
Solution
Accepted by topic author nitad54449

Interesting problem. There is no direct solution for non-negative Tikhonov regularization, but it converges really fast. On my old laptop, direct takes about 500microseconds and non-negative 2.5ms for your data.

 

Of course your Zi is almost too clean. It would be more interesting to add a little bit of noise.

 

I have written a full featured version where many options can be set, but it is not public yet. Ultimately, it will go on Github. It is a core component of my program LongDistances and algorithmic details are outlined here)

 

Here's how it looks with your data:

 

altenbach_3-1691684091973.png

 

 

Note that with e.g. 10k noise added to your Zi, the non-negative is much more stable than the plain version:

 

altenbach_0-1691683926908.png

 

 

 

Message 2 of 6
(1,032 Views)

Hi

Thanks a lot.. To be honest I was lurking for your answer as I found, via Google, about your EPR code. The data I put is simulated, just to see how it works... 

Your result is just brilliant (looks too good 🙂 ) !

Would it be possible to get your routine ? (obviously I will credit your work !)

I am working on a package for impedance analysis that is free (I can send you a link in private if you want to see it)

With regards

0 Kudos
Message 3 of 6
(1,025 Views)

Hi

Finally, I have found a description of a method in a paper here

https://arxiv.org/abs/1307.7345

and I implemented it; it does not look as good as yours but it's better than negative probability 🙂

 

nitad54449_0-1691744603129.png

 

I have to play a bit with it, it requires an additional parameter in the Tikhonov regularization

thanks for help

Regards

 

Message 4 of 6
(985 Views)

To be honest, my formal linear algebra education is from the seventies and I always have a hard time reading these terse formulas. My method is extremely simple and fast, and since it works well for my problems, I have not really tried to improve it. In my program, Tikhonov is only used for instant guesses while the real code analysis uses Levenberg-Marquardt where I can add co-optimize additional parameters, such as background coefficients.

 

My nonnegative Tikhonov was mostly developed from scratch directly in LabVIEW by just playing around with some simple ideas (i.e. experimental math instead of theoretical math 😄 ) and I am not sure if it has been described elsewhere. This is one of the reasons it's not public yet.

 

 

0 Kudos
Message 5 of 6
(970 Views)

well, your experimental math looks better than mine 🙂

0 Kudos
Message 6 of 6
(964 Views)