Я пытаюсь найти сложные интегралы линии / пути по нескольким круговым замкнутым путям, используя команду интеграла.Мой код для интеграла 1 / (zi) ^ 2 по кругу {z: | z | = 2}, пройденного один раз против часовой стрелки, выглядит следующим образом:
fun = @(z) 1 ./((z-1i) .^ 2);;
g = @(t) 2 .*(cos(t) + 1i .* sin(t));
gprime = @(t) 2 .*(-sin(t) + 1i .* cos(t));
q1 = integral(@(t) fun(g(t)) .* gprime(t),0,2 .* pi)
(я ожидаю, что ответ будет 0и Matlab дает 6,6613 * 10 ^ (- 16) -4,4409 * 10 ^ (- 16) i).
Мой код для интеграла e ^ z / (z (z ^ 2-9)) покруг {z: | z-2 | = 3}, пройденный один раз против часовой стрелки, выглядит следующим образом:
fun = @(z) exp(z) ./(z .* (z.^2-9));
g = @(t) 2+3 .*(cos(t) + 1i .* sin(t));
gprime = @(t) 2+3 .*(-sin(t) + 1i .* cos(t));
q1 = integral(@(t) fun(g(t)) .* gprime(t),0,2 .* pi)
(я ожидаю, что ответ будет pi / 9 (e ^ 3-2) i, ноMatlab дает 5.4351 + 6.3130i).
Как видно выше, моя проблема заключается в том, что, хотя код дает точные значения, когда круговой путь центрирован в начале координат, в противном случае происходит сбой;иногда давая точную мнимую часть, но неточную действительную часть или просто совершенно неточный ответ.
Кто-нибудь может увидеть, что идет не так?