def test_Sloppy_derived_parameters():
    sloppyModelEg = {
     'assignments': {},
     'derived_params': {'k': 's1/s2', 'q': 's3*s4', 'm': 'q+s5'},
     'functions': {},
     'odes': {'x':'y + _y_RHS', 'y': '-k*x/m'},
     'parameters':{'s1': 1, 's2': 10., 's3': 0.25, 's4': 1, 's5': 0.25},
     'events': {},
     'domains': {}
     }

    model_name = 'test_derived_parameters'
    ics = {'x': 1, 'y': 0.4}
    algparams = {'init_step': 0.1, 'stiff': True}
    sModel = makeSloppyModel(model_name, sloppyModelEg, 'Vode_ODEsystem',
                             algParams=algparams, silent=False,
                             containsRHSdefs=True)

    sModel.compute(trajname='test_derived_params',
                   force=True,
                   ics=ics,
                   tdata=[0, 20],
                   verboselevel=0
                  )
    pts = sModel.sample('test_derived_params')
    assert_allclose(pts[-1]['x'], -0.042398, rtol=1e-4)
    assert_allclose(pts[-1]['y'], -0.073427, rtol=1e-4)
 'mdt_216': 90.0,
 'mu_39': 0.007701635339555 # was 0.
                }

#print "F_28 should be ", exp(-all_ics_pars['mu_39']*all_ics_pars['D_26'])


# change genTarget to 'Vode_ODEsystem' if your external C compiler doesn't work

print("Making model")
genTarget = 'Radau_ODEsystem'
algparams = {'init_step': 0.1}

if genTarget == 'Vode_ODEsystem':
    algparams['stiff'] = True
sModel = makeSloppyModel('cplx_eg', sloppyModelEg, genTarget,
                     algParams=algparams, silent=True)

print("\nAux spec:\n", end=' ')
sModel.showDef('cplx_eg', 'auxspec')

# make some random i.c.s
def uniformICs(varnames, a, b):
    return dict(list(zip(varnames, [random.uniform(a, b) for v in varnames])))

#ics = uniformICs(sModel.allvars, 0, 1)

ics = {}
for name, val in all_ics_pars.items():
    if name in sModel.allvars:
        ics[name] = val
    'mu_39': 0.007701635339555  # was 0.
}

#print "F_28 should be ", exp(-all_ics_pars['mu_39']*all_ics_pars['D_26'])

# change genTarget to 'Vode_ODEsystem' if your external C compiler doesn't work

print("Making model")
genTarget = 'Radau_ODEsystem'
algparams = {'init_step': 0.1}

if genTarget == 'Vode_ODEsystem':
    algparams['stiff'] = True
sModel = makeSloppyModel('cplx_eg',
                         sloppyModelEg,
                         genTarget,
                         algParams=algparams,
                         silent=True)

print("\nAux spec:\n", end=' ')
sModel.showDef('cplx_eg', 'auxspec')


# make some random i.c.s
def uniformICs(varnames, a, b):
    return dict(list(zip(varnames, [random.uniform(a, b) for v in varnames])))


#ics = uniformICs(sModel.allvars, 0, 1)

ics = {}