#!/usr/bin/env python
import numpy as np

import dipy.core.gradients as dpg

from AFQ.utils.bin import model_predict_input_parser
from AFQ import dti

usage = """pyAFQ_dti_predict [options]"""
parser = model_predict_input_parser(usage)

opts = parser.parse_args()

bvals = []
bvecs = []
for bval_file, bvec_file in zip(opts.bval, opts.bvec):
    bvals.append(np.loadtxt(bval_file))
    bvecs.append(np.loadtxt(bvec_file))

gtab = dpg.gradient_table(np.concatenate(bvals),
                          np.concatenate(bvecs, -1),
                          b0_threshold=float(opts.b0_threshold))

dti.predict(opts.params, gtab, S0_file=opts.S0_file,
            out_dir=opts.out_dir)
