maxiter = args.maxiter
    restart = args.restart
    tol = args.tol
    objective = args.objective
    nsamples = args.nsamples

    sigma_obs = 1e-10
    sigma_prior = 0.5


    dirname ="base_solution"
    y, u, R11, R12, R22, R33, omega = load_solution_stressomega(dirname)
    eqn = StressOmegaEquation(y, u, R11, R12, R22, R33, omega, Retau)
    eqn.writedir = "/tmp"
    # first dt can be large as we restart from a good solution
    eqn.force_boundary = False
    eqn.tol = tol
    eqn.dt = 1e1
    eqn.solve()
    beta_prior = np.ones_like(eqn.beta)
    eqn_prior = copy.deepcopy(eqn)
    up_prior = eqn.up.copy()

    Q_prior = np.zeros([np.size(eqn.q), nsamples])

    sample = 0
    while sample < nsamples:
        print "\rSampling prior %i of %i"%(sample, nsamples),
        sys.stdout.flush()
        eqn.dt = dt
        eqn.q[:] = eqn_prior.q[:]