[time-nuts] Thermal impact on OCXO

Bob Camp kb8tq at n1k.org
Thu Nov 17 12:39:30 EST 2016


Hi

> On Nov 17, 2016, at 10:34 AM, Scott Stobbe <scott.j.stobbe at gmail.com> wrote:
> 
> I couldn't agree more, that, once you add a correlated disturbance or
> 1/f^a power law noise, things get even messier. Gaussian is just the
> easiest to toss in.
> 
> I once herd a story from once upon a time that, if you bought a 10%
> resistor, what you ended up with is something like this in the figure
> attached.
> 
> Of course 1% percent resistors (EIA96) are manufactured in high yield
> today, but I would guess some of this still applies to OCXOs, you
> aren't likely to find a gem in the D grade parts. After pre-aging for
> a couple of weeks they are either binned, labeled D, or the ones that
> show promise are left to age some more before being tested to C grade,
> etc, etc.

Most (> 99%) OCXO’s are made to custom specs for large OEM’s. The sort
consists of “ship these” and “send these to the crusher”.  Needless to say,
the emphasis is on a process that throws out as few as possible. 

Bob


> 
> On Wed, Nov 16, 2016 at 8:06 PM, Bob Camp <kb8tq at n1k.org> wrote:
>> Hi
>> 
>> The issue in fitting over short time periods is that the noise is very much
>> *not* gaussian. You have effects from things like temperature and warmup
>> that *do* have trends to them. They will lead you off into all sorts of dark
>> holes fit wise.
>> 
>> Bob
>> 
>>> On Nov 16, 2016, at 6:48 PM, Scott Stobbe <scott.j.stobbe at gmail.com> wrote:
>>> 
>>> A few different plots. I didn't have an intuitive feel for what the B
>>> coefficient in log term looks like on a plot, so that is the first
>>> plot. The same aging curve is plotted three times, with the exception
>>> of the B coefficient being scaled by 1/10, 1, 10 respectively. In hand
>>> waving terms, it does have an enormous impact during the first 30 days
>>> (or until Bt >>1), but from then on, it is just an additive offset.
>>> 
>>> The next 4 plots are just sample fits with noise added.
>>> 
>>> Finally the 6th plot is of just the first 30 days, the data would seem
>>> to be cleaner than what was shown as a sample in the paper, but the
>>> stability of the B coefficient in 10 monte-carlo runs is not great.
>>> But when plotted over a year the results are minimal.
>>> 
>>>         A1              A2            A3
>>>    0.022914       6.8459   0.00016743
>>>    0.022932       6.6702   0.00058768
>>>    0.023206       5.7969    0.0026103
>>>    0.023219       4.3127    0.0093793
>>>     0.02374       2.8309     0.016838
>>>    0.023119       5.0214    0.0061557
>>>    0.023054       5.8399    0.0031886
>>>    0.022782       9.8582   -0.0074089
>>>    0.023279       3.7392     0.012161
>>>     0.02345       4.1062    0.0095448
>>> 
>>> The only other thing to point out from this, is that the A2 and A3
>>> coefficients are highly non-orthogonal, as A2 increases, A3 drops to
>>> make up the difference.
>>> 
>>> On Wed, Nov 16, 2016 at 7:38 AM, Bob Camp <kb8tq at n1k.org> wrote:
>>>> Hi
>>>> 
>>>> The original introduction of 55310 written by a couple of *very* good guys:
>>>> 
>>>> http://tycho.usno.navy.mil/ptti/1987papers/Vol%2019_16.pdf
>>>> 
>>>> A fairly current copy of 55310:
>>>> 
>>>> https://nepp.nasa.gov/DocUploads/1F3275A6-9140-4C0C-864542DBF16EB1CC/MIL-PRF-55310.pdf
>>>> 
>>>> The “right” equation is on page 47. It’s the “Bt+1” in the log that messes up the fit. If you fit it without
>>>> the +1, the fit is *much* easier to do. The result isn’t quite right.
>>>> 
>>>> Bob
>>>> 
>>>> 
>>>>> On Nov 15, 2016, at 11:58 PM, Scott Stobbe <scott.j.stobbe at gmail.com> wrote:
>>>>> 
>>>>> Hi Bob,
>>>>> 
>>>>> Do you recall if you fitted with true ordinary least squares, or fit with a
>>>>> recursive/iterative approach in a least squares sense. If the aging curve
>>>>> is linearizable, it isn't jumping out at me.
>>>>> 
>>>>> If the model was hypothetically:
>>>>>   F = A ln( B*t )
>>>>> 
>>>>>   F = A ln(t) + Aln(B)
>>>>> 
>>>>> which could easily be fit as
>>>>>   F  = A' X + B', where X = ln(t)
>>>>> 
>>>>> It would appear stable32 uses an iterative approach for the non-linear
>>>>> problem
>>>>> 
>>>>> "y(t) = a·ln(bt+1), where slope = y'(t) = ab/(bt+1) Determining the
>>>>> nonlinear log fit coefficients requires an iterative procedure. This
>>>>> involves setting b to an in initial value, linearizing the equation,
>>>>> solving for the other coefficients and the sum of the squared error,
>>>>> comparing that with an error criterion, and iterating until a satisfactory
>>>>> result is found. The key aspects to this numerical analysis process are
>>>>> establishing a satisfactory iteration factor and error criterion to assure
>>>>> both convergence and small residuals."
>>>>> 
>>>>> http://www.stable32.com/Curve%20Fitting%20Features%20in%20Stable32.pdf
>>>>> 
>>>>> Not sure what others do.
>>>>> 
>>>>> 
>>>>> On Mon, Nov 14, 2016 at 7:15 AM, Bob Camp <kb8tq at n1k.org> wrote:
>>>>> 
>>>>>> Hi
>>>>>> 
>>>>>> If you already *have* data over a year (or multiple years) the fit is
>>>>>> fairly easy.
>>>>>> If you try to do this with data from a few days or less, the whole fit
>>>>>> process is
>>>>>> a bit crazy. You also have *multiple* time constants involved on most
>>>>>> OCXO’s.
>>>>>> The result is that an earlier fit will have a shorter time constant (and
>>>>>> will ultimately
>>>>>> die out). You may not be able to separate the 25 year curve from the 3
>>>>>> month
>>>>>> curve with only 3 months of data.
>>>>>> 
>>>>>> Bob
>>>>>> 
>>>>>>> On Nov 13, 2016, at 10:59 PM, Scott Stobbe <scott.j.stobbe at gmail.com>
>>>>>> wrote:
>>>>>>> 
>>>>>>> On Mon, Nov 7, 2016 at 10:34 AM, Scott Stobbe <scott.j.stobbe at gmail.com>
>>>>>>> wrote:
>>>>>>> 
>>>>>>>> Here is a sample data point taken from http://tycho.usno.navy.mil/ptt
>>>>>>>> i/1987papers/Vol%2019_16.pdf; the first that showed up on a google
>>>>>> search.
>>>>>>>> 
>>>>>>>>      Year   Aging [PPB]  dF/dt [PPT/Day]
>>>>>>>>         1       180.51       63.884
>>>>>>>>         2       196.65        31.93
>>>>>>>>         5          218       12.769
>>>>>>>>         9       231.69       7.0934
>>>>>>>>        10       234.15        6.384
>>>>>>>>        25        255.5       2.5535
>>>>>>>> 
>>>>>>>> If you have a set of coefficients you believe to be representative of
>>>>>> your
>>>>>>>> OCXO, we can give those a go.
>>>>>>>> 
>>>>>>>> 
>>>>>>> I thought I would come back to this sample data point and see what the
>>>>>>> impact of using a 1st order estimate for the log function would entail.
>>>>>>> 
>>>>>>> The coefficients supplied in the paper are the following:
>>>>>>>  A1 = 0.0233;
>>>>>>>  A2 = 4.4583;
>>>>>>>  A3 = 0.0082;
>>>>>>> 
>>>>>>> F =  A1*ln( A2*x +1 ) + A3;  where x is time in days
>>>>>>> 
>>>>>>>  Fdot = (A1*A2)/(A2*x +1)
>>>>>>> 
>>>>>>>  Fdotdot = -(A1*A2^2)/(A2*x +1)^2
>>>>>>> 
>>>>>>> When x is large, the derivatives are approximately:
>>>>>>> 
>>>>>>>  Fdot ~= A1/x
>>>>>>> 
>>>>>>>  Fdotdot ~= -A1/x^2
>>>>>>> 
>>>>>>> It's worth noting that, just as it is visually apparent from the graph,
>>>>>> the
>>>>>>> aging becomes more linear as time progresses, the second, third, ...,
>>>>>>> derivatives drop off faster than the first.
>>>>>>> 
>>>>>>> A first order taylor series of the aging would be,
>>>>>>> 
>>>>>>>  T1(x, xo) = A3 + A1*ln(A2*xo + 1) +  (A1*A2)(x - xo)/(A2*xo +1) + O(
>>>>>>> (x-xo)^2 )
>>>>>>> 
>>>>>>> The remainder (error) term for a 1st order taylor series of F would be:
>>>>>>>   R(x) = Fdotdot(c) * ((x-xo)^2)/(2!);  where c is some value between
>>>>>> x
>>>>>>> and xo.
>>>>>>> 
>>>>>>> So, take for example, forward projecting the drift one day after the
>>>>>> 365th
>>>>>>> day using a first order model,
>>>>>>>  xo = 365
>>>>>>> 
>>>>>>>  Fdot(365) =  63.796 PPT/day, alternatively the approximate derivative
>>>>>>> is: 63.836 PPT/day
>>>>>>> 
>>>>>>>  |R(366)| =  0.087339 PPT (more than likely, this is no where near 1
>>>>>>> DAC LSB on the EFC line)
>>>>>>> 
>>>>>>> More than likely you wouldn't try to project 7 days out, but considering
>>>>>>> only the generalized effects of aging, the error would be:
>>>>>>> 
>>>>>>>  |R(372)| = 4.282 PPT (So on the 7th day, a 1st order model starts to
>>>>>>> degrade into a few DAC LSB)
>>>>>>> 
>>>>>>> In the case of forward projecting aging for one day, using a 1st order
>>>>>>> model versus the full logarithmic model, would likely be a discrepancy of
>>>>>>> less than one dac LSB.
>>>>>>> _______________________________________________
>>>>>>> time-nuts mailing list -- time-nuts at 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 at 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 at 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 at febo.com
>>>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>>>> and follow the instructions there.
>>> <AGING_30DAYS_0p5ppb.png><AGING_30DAYS_0p5ppb_simple.png><AGING_30DAYS_0p5ppb_zoomin.png><AGING_30DAYS_5ppb.png><AGING_30DAYS_5ppb_simple.png><AGING_SCALE_A2.png>_______________________________________________
>>> time-nuts mailing list -- time-nuts at 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 at febo.com
>> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
>> and follow the instructions there.
> <10percentResistor.png>_______________________________________________
> time-nuts mailing list -- time-nuts at febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.



More information about the time-nuts mailing list