2017-02-08 16 views
0

У меня есть рекурсивное уравнение для величин w1 [k, n], w2 [k, n], где k - либо положительное, либо отрицательное целое число, а n - целое положительное число , Уравнение следующим образом:Maxima CAS - как установить что-то (на ноль)

eq1_1 : w1[ K, N ] + R*sum(sum(w1[ K-k, N-n ]*'diff(w2[ k, n-1 ], R) + w2[ K-k, N-n ]*'diff(w2[ k, n-1 ], z) + %i*k*(w1[ K-k, N-n ]*w2[ k, n ]*'diff(S, R) + w2[ K-k, N-n ]*w2[ k, n ]*'diff(S, z)) , k, -n-1, n+1), n, 0, N) = 0; 

я написать правило

rule0: [N=0, K=0] 

написать первый член. Я просто хочу написать это, а не решать. Я подставим это правило, установите

simpsum:true 

и я получаю в качестве вывода уравнения (извините, но я не могу скопировать его здесь) с точки зрения как w1 [-1, -1], который должен быть равен нуль, потому что n положительно. Я попытался установить его на ноль с subst, ratsubst и tellimp, но ни один из них не работал (возможно, я использовал неправильный синтаксис). Есть ли способ установить эти термины в ноль или даже лучше сказать максимумы, чтобы они не записывали их еще до того, как они выполнили какие-либо вычисления?

+0

Что такое определение 'w1 [k, n] и' w2 [k, n] '? –

ответ

0
w2[-1,0] : 0$ /* repeat as needed for other specific elements */ 
subst(rule0,eq1_1); 
ev(%); 

или, что эквивалентно,

w2[-1,0] : 0$ 
subst(rule0,eq1_1),eval;