Bob wrote:
As mentioned earlier in this thread. The function that has been used in several posts
isn’t the right log function. The proper fit is to ln(bt+1)
You are absolutely right. It was my mistake to use the ln(t) in the graph. As that was what I know in Excel and I don´t have Stable32 or MatLab. In Excel I actually double checked that (aln(bt+1)) with b 5 to 1000 gave about the same as (aln(t)) for my data set (only the offset was largely different).
Hopefully someone can find the correct a and b for a*ln(bt+1) with stable32 or matlab for this data set:
Days ppb
2 2
4 3.5
7 4.65
8 5.05
9 5.22
12 6.11
13 6.19
25 7.26
32 7.92
It would also be interesting if I could get the drift after 10 years to see if it is about 6E-13/day as with the ln(t).
Peter wrote:
I'm not very good with Excel, but this curve-fitting function sounds very
useful. Could you please tell me how it's done?
In the graph I only right-clicked the curve and selected ”add trendline” here I checked the logarithmic and show equation.
Lars
Hi Lars,
Now, consider f(t) = alog(bt+1), then the derivate is ab/(bt+1) and
second derivate - a * b^2 / (b*t + 1)^2.
Forming first f'(t) and second f"(t) derivate estimates from data is
trivial. Given that we can estimate a and b using
a = - f('t)^2 / f"(t)
b = - f'(t) / (f'(t) * t - a)
= - f"(t) / (f("t) * t - f'(t))
A bit of paper and pen work or you get Maxima to do some work for you.
I haven't seen how any real estimator of this drift function is
implemented, but I wanted to provide some notes from note-book of stuff
being unfinished.
Cheers,
Magnus
On 11/18/2016 07:26 PM, Lars Walenius wrote:
Bob wrote:
As mentioned earlier in this thread. The function that has been used in several posts
isn’t the right log function. The proper fit is to ln(bt+1)
You are absolutely right. It was my mistake to use the ln(t) in the graph. As that was what I know in Excel and I don´t have Stable32 or MatLab. In Excel I actually double checked that (aln(bt+1)) with b 5 to 1000 gave about the same as (aln(t)) for my data set (only the offset was largely different).
Hopefully someone can find the correct a and b for a*ln(bt+1) with stable32 or matlab for this data set:
Days ppb
2 2
4 3.5
7 4.65
8 5.05
9 5.22
12 6.11
13 6.19
25 7.26
32 7.92
It would also be interesting if I could get the drift after 10 years to see if it is about 6E-13/day as with the ln(t).
Peter wrote:
I'm not very good with Excel, but this curve-fitting function sounds very
useful. Could you please tell me how it's done?
In the graph I only right-clicked the curve and selected ”add trendline” here I checked the logarithmic and show equation.
Lars
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
Hi
On Nov 18, 2016, at 4:36 PM, Magnus Danielson magnus@rubidium.dyndns.org wrote:
Hi Lars,
Now, consider f(t) = alog(bt+1), then the derivate is ab/(bt+1) and second derivate - a * b^2 / (b*t + 1)^2.
Forming first f'(t) and second f"(t) derivate estimates from data is trivial. Given that we can estimate a and b using
a = - f('t)^2 / f"(t)
b = - f'(t) / (f'(t) * t - a)
= - f"(t) / (f("t) * t - f'(t))
A bit of paper and pen work or you get Maxima to do some work for you.
I haven't seen how any real estimator of this drift function is implemented,
By far the most common implementation of the equation as an estimator is in factory test of OCXO’s that
are built to the 55310 spec. It also is fairly common to use it on commercial OCXO’s as well. Put another way:
It’s how you answer “Does it meet the 20 year aging spec?” in less than 20 years.
Bob
but I wanted to provide some notes from note-book of stuff being unfinished.
Cheers,
Magnus
On 11/18/2016 07:26 PM, Lars Walenius wrote:
Bob wrote:
As mentioned earlier in this thread. The function that has been used in several posts
isn’t the right log function. The proper fit is to ln(bt+1)
You are absolutely right. It was my mistake to use the ln(t) in the graph. As that was what I know in Excel and I don´t have Stable32 or MatLab. In Excel I actually double checked that (aln(bt+1)) with b 5 to 1000 gave about the same as (aln(t)) for my data set (only the offset was largely different).
Hopefully someone can find the correct a and b for a*ln(bt+1) with stable32 or matlab for this data set:
Days ppb
2 2
4 3.5
7 4.65
8 5.05
9 5.22
12 6.11
13 6.19
25 7.26
32 7.92
It would also be interesting if I could get the drift after 10 years to see if it is about 6E-13/day as with the ln(t).
Peter wrote:
I'm not very good with Excel, but this curve-fitting function sounds very
useful. Could you please tell me how it's done?
In the graph I only right-clicked the curve and selected ”add trendline” here I checked the logarithmic and show equation.
Lars
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.
Hi Lars,
I agree with you, that if there is data out there, it isn't easy to find,
many thanks for sharing!
Fitting to the full model had limited improvements, the b coefficient was
quite large making it essentially equal to the ln(x) function you fitted in
excel. It is attached as "Lars_FitToMil55310.png".
So on further thought, the B term can't model a device aging even faster
than it should shortly after infancy. In the two extreme cases either B is
large and (Bt)>>1 so the be B term ends up just being an additive bias, or
B is small, and ln(x) is linearized (or slowed down) during the first bit
of time.
You can approximated the MIL 55310 between two points in time as
f(t2) - f(t1) = Aln(t2/t1)
A = ( f(t2) - f(t1) )/ln(t2/t1)
Looking at some of your plots it looks like between the end of year 1 and
year 10 you age from 20 ppb to 65 ppb,
A ~ 20
The next plot "Lars_ForceAcoef", is a fit with the A coefficient forced to
be 2 and 20. The 20 doesn't end-up fitting well on this time scale.
Looking at the data a little more, I wondered if the first 10 day are going
through some behavior that isn't representative of long-term aging, like
warm-up, retrace (I'm sure bob could name half a dozen more examples). So
the next two plots are fits of the 4 data points after day10, and seem to
fit well, "Lars_FitAfterDay10.png", "Lars_1Year.png".
If you are willing to share the next month, we can add that to the fit.
Cheers,
On Fri, Nov 18, 2016 at 1:26 PM, Lars Walenius lars.walenius@hotmail.com
wrote:
Hopefully someone can find the correct a and b for a*ln(bt+1) with
stable32 or matlab for this data set:
Days ppb
2 2
4 3.5
7 4.65
8 5.05
9 5.22
12 6.11
13 6.19
25 7.26
32 7.92
Hi
In a conventional fit situation, you have < 30 days worth of data and the “time constant”
is > 30 days. Put another way bt <= 1 in the normal case. It is only when you go out to years
that bt gets large.
Bob
On Nov 18, 2016, at 9:58 PM, Scott Stobbe scott.j.stobbe@gmail.com wrote:
Hi Lars,
I agree with you, that if there is data out there, it isn't easy to find,
many thanks for sharing!
Fitting to the full model had limited improvements, the b coefficient was
quite large making it essentially equal to the ln(x) function you fitted in
excel. It is attached as "Lars_FitToMil55310.png".
So on further thought, the B term can't model a device aging even faster
than it should shortly after infancy. In the two extreme cases either B is
large and (Bt)>>1 so the be B term ends up just being an additive bias, or
B is small, and ln(x) is linearized (or slowed down) during the first bit
of time.
You can approximated the MIL 55310 between two points in time as
f(t2) - f(t1) = Aln(t2/t1)
A = ( f(t2) - f(t1) )/ln(t2/t1)
Looking at some of your plots it looks like between the end of year 1 and
year 10 you age from 20 ppb to 65 ppb,
A ~ 20
The next plot "Lars_ForceAcoef", is a fit with the A coefficient forced to
be 2 and 20. The 20 doesn't end-up fitting well on this time scale.
Looking at the data a little more, I wondered if the first 10 day are going
through some behavior that isn't representative of long-term aging, like
warm-up, retrace (I'm sure bob could name half a dozen more examples). So
the next two plots are fits of the 4 data points after day10, and seem to
fit well, "Lars_FitAfterDay10.png", "Lars_1Year.png".
If you are willing to share the next month, we can add that to the fit.
Cheers,
On Fri, Nov 18, 2016 at 1:26 PM, Lars Walenius lars.walenius@hotmail.com
wrote:
Hopefully someone can find the correct a and b for a*ln(bt+1) with
stable32 or matlab for this data set:
Days ppb
2 2
4 3.5
7 4.65
8 5.05
9 5.22
12 6.11
13 6.19
25 7.26
32 7.92
<Lars_1Year.png><Lars_FitAfterDay10.png><Lars_FitToMil55310.png><Lars_ForceAcoef.png>_______________________________________________
time-nuts mailing list -- time-nuts@febo.com
To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
and follow the instructions there.