The math here looks a bit convoluted, you can get the adc by doing `-np.dot(tensor.lower_triangular, desing_matrix.T)`, if you set bval to 1 when you build the design_matrix. You can get the predicted signal by doing `np.exp(np.dot(tensor.lower_triangular(b0_signal), desing_matrix.T))`. Do you want me to take a closer look at this?