Как исправить следующую ошибку в операторе if-else в MATLAB - PullRequest
0 голосов
/ 02 июля 2018

Итак, у меня есть следующий код:

if tau_a == tau_b
    ana_nb = NB * exp(-t/tau_a) + t * (NA/tau_a) * exp(-(t/tau_a))
else
    ana_nb = NB * exp(-t/tau_b) + NA/((tau_a/tau_b)-1) * (exp(-t/tau_a) - exp(-t/tau_b))
end

Здесь NA = 100, NB = 80, tau_a = 2, tau_b = 4, t - массив чисел (размером 21)

Я получаю сообщение об ошибке: «Ошибка при использовании *. Размеры внутренней матрицы должны совпадать».

Как мне это исправить?

1 Ответ

0 голосов
/ 02 июля 2018

Вам нужно будет использовать поэлементное умножение .*

ana_nb = NB .* exp(-t/tau_a) + t .* (NA/tau_a) .* exp(-(t/tau_a))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...