LINUX.ORG.RU

Математикам ( алгоритмы)


0

0

Есть диф. уравнение:

a1*y(t)''' + a2*y(t)'' + a3*y(t)' + a4*y(t) = f(t)

f(t) = 1 ( вероятнее всего)

Задача найти y' и у, коэффициенты ax - произвольные действительные числа . Решаю хар-кое ур-ние - с этим вроде всё ясно. Корни могут быть: разные, нулевые( резонанс), комп. сопряжённые, кратные( насколько я могу судить, в данном случае кратность может быть только 2). Дальше нужно искать решение соответствующего однородного у-ния, исходя из корней. После, опять же исходя из корней искать решение исходного неоднородного ур-ния.

С последними двумя пунктами проблема. Какие там могут быть варианты поиска решения( именно для данного случая)? По этим решениям хочу найти производные для каждого случая, это возможно?

anonymous

На лекции ходить надо, они очень полезны

решения ищем в голом виде ж))

anonymous
()

Во-первых y(0),y'(0),y''(0) должны быть заданы, иначе уравнение имеет бесконечно много решений. Ну а дальше, по пункту 1: решение однородного уравнения есть линейная комбинация экспонент exp(rt), где r -- корень характеристического уравнения (если есть кратные корни, то ситуация немного посложнее). По пункту 2: частное решение неоднородного уравнения для f=1 равно y=1/a4, это очевидно, общее решение есть частное плюс общее решение однородного.

После этого подставляешь в общее решение начальные условия (y(0),y'(0),y''(0)) и находишь коэффициенты при экспонентах, решив систему линейных уравнений.

Как-то так.

anonymous
()

Немного не так описал. 

Функция f(x) - единичная:
при -беск < t < 0, f(t) = 0;
при 0 <= t < +беск, f(t) = 1; 

Вопрос про нулевые корни пока все ещё открыт. 

Пока остановился на трех типовых решениях однородного уравнения + подсказанное другим анонимусом( спасибо ему) , ч.р. неоднородного. Производные - дифференцированием решения. Дальше хочу в цикле увеличивать t, каждый раз находя новые значения коэффициентов,начальные условия берутся из предыдущего цикла( вначале нулевые условия). Это корректно? 

Ещё один глупый вопрос: как искать значения коэффициентов( хотя бы пару примеров киньте, а то везде в общем виде)? 

anonymous
()

Немного не так описал.

Функция f(x) - единичная: при -беск < t < 0, f(t) = 0; при 0 <= t < +беск, f(t) = 1;

Вопрос про нулевые корни пока все ещё открыт.

Пока остановился на трех типовых решениях однородного уравнения + подсказанное другим анонимусом( спасибо ему) , ч.р. неоднородного. Производные - дифференцированием решения. Дальше хочу в цикле увеличивать t, каждый раз находя новые значения коэффициентов,начальные условия берутся из предыдущего цикла( вначале нулевые условия). Это корректно?

Ещё один глупый вопрос: как искать значения коэффициентов( хотя бы пару примеров киньте, а то везде в общем виде)?

anonymous
()
Ответ на: комментарий от anonymous

> Вопрос про нулевые корни пока все ещё открыт.

C нулевыми корнями все ясно --- к решению добавляется полином, это же очевидно, например у''' + y'' = 0, здесь 2 нулевых корня, и соответствующий кусок общего решения A*t+B.

C тэта-функцией (это f(x), которую ты описал) решение при x<0 будет совпадать с однородным, а при x>0 -- с тем, что я выше написал. При x=0 третья производная будет испытывать скачок. Связать решения слева и справа можно потребовав непрерывности y,y',y'' в нуле (получится система линейных уравнений).

>Дальше хочу в цикле увеличивать t, каждый раз находя новые значения

>Ещё один глупый вопрос: как искать значения коэффициентов( хотя бы пару примеров киньте, а то везде в общем виде)?

Коэффициенты от t не зависят, это же линейный диффур, для них получается тривиальная линейная система уравнений (при подстановке начальных условий (y(t0),y'(t0),y''(t0)).

PS Скачал бы учебник какой-нибудь по диффурам. http://www.poiskknig.ru

anonymous
()

http://forum.b.gz.ru/showflat.php?Cat=&Board=study&Number=6804977&...

Что-то непонятно, что спрашиваешь-то вообще.

Если f(t)=1, то частное решение неоднородного уравнения будет просто y=1/a4 (если a4 не 0).

Дальше общее решение исходного неоднородного = общ. реш. однор. + частн.неоднор.

PS Коэффициенты я бы переобозначил как коэффициенты при степенях.

b3*y(t)''' + b2*y(t)'' + b1*y(t)' + b0*y(t) = f(t)

Дальше хар.ур.

b3*x^3 + b2*x^2 + b1*x + b0 = 0

разложится на множители

b3*(x-x1)*(x-x2)* (x-x3)=0

y= сумма ci*exp(xi*t)

Если совпадают какие-то корни при резонансе первого или второго поярдка, то просто появляются t и t^2/2 при соответствующих экспонентах в этой сумме.

Если все три корня совпадают x1=x2=x3 например, то y= c1*exp(x1*t) + t*c2*exp(x1*t) + t^2/2*c2*exp(x1*t)

Для комплексных всё то же, или ci можешь комплексными считать чтобы ответ действительный получился они там сопряжены получатся, или по формуле Эйлера

exp(a+ib) = exp(a) *(cos b + i sin b)

можешь паре сопряжённых корней x1= a+ib и x2= a-ib писать y=c1*exp(at) *cos bt + c2*exp(at) *sin bt

PS Задачник Филлипова найди.

vilfred ☆☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.