# the three different parameters has any significant impact on predicting the
# value of any of the 3 parameters
xDatas = [yArray, yArray, (yArray - np.mean(yArray)) / np.std(yArray) - uArray]
yDatas = [taus, kps, thetas]

m = model(nstep)
modelList = []

uSum = np.sum(uArray, axis=0)
plt.figure()
plt.plot(np.linspace(0, 100, 100), uSum)

for j in range(0, len(xDatas)):
    xData = xDatas[j]
    yData = yDatas[j]
    x_train, x_val, y_train, y_val, numDim = sig.preprocess(xData, yData)

    model = m.model_1()

    print("Fit model on training data")
    history = model.fit(
        x_train,
        y_train,
        batch_size=16,
        epochs=100,
        # We pass some validation for
        # monitoring validation loss and metrics
        # at the end of each epoch
        validation_data=(x_val, y_val),
    )
    modelList.append(model)