[time-nuts] Re: Simple simulation model for an OCXO?
Bob kb8tq
kb8tq at n1k.org
Mon May 2 21:43:01 UTC 2022
Hi
By far the best approach is to use actual data. Grab a pair of OCXOâs and
compare them. A single mixer setup is one easy ( = cheap ) way to do it. You
will get the sum of the two devices, but for simulation purposes, it will be *much*
closer to reality than anything you can brew up with a formula.
Bob
> On May 2, 2022, at 10:12 AM, Matthias Welwarsky <time-nuts at welwarsky.de> wrote:
>
> Dear all,
>
> I'm trying to come up with a reasonably simple model for an OCXO that I can
> parametrize to experiment with a GPSDO simulator. For now I have the following
> matlab function that "somewhat" does what I think is reasonable, but I would
> like a reality check.
>
> This is the matlab code:
>
> function [phase] = synth_osc(samples,da,wn,fn)
> # aging
> phase = (((1:samples)/86400).^2)*da;
> # white noise
> phase += (rand(1,samples)-0.5)*wn;
> # flicker noise
> phase += cumsum(rand(1,samples)-0.5)*fn;
> end
>
> There are three components in the model, aging, white noise and flicker noise,
> with everything expressed in fractions of seconds.
>
> The first term basically creates a base vector that has a quadratic aging
> function. It can be parametrized e.g. from an OCXO datasheet, daily aging
> given in s/s per day.
>
> The second term models white noise. It's just a random number scaled to the
> desired 1-second uncertainty.
>
> The third term is supposed to model flicker noise. It's basically a random
> walk scaled to the desired magnitude.
>
> As an example, the following function call would create a phase vector for a
> 10MHz oscillator with one day worth of samples, with an aging of about 5
> Millihertz per day, 10ps/s white noise and 10ns/s of flicker noise:
>
> phase = osc_synth(86400, -44e-6, 10e-12, 10e-9);
>
> What I'd like to know - is that a "reasonable" model or is it just too far off
> of reality to be useful? What could be changed or improved?
>
> Best regards,
> Matthias
>
>
> _______________________________________________
> time-nuts mailing list -- time-nuts at lists.febo.com -- To unsubscribe send an email to time-nuts-leave at lists.febo.com
> To unsubscribe, go to and follow the instructions there.
More information about the Time-nuts_lists.febo.com
mailing list