salut,
rsolve ne prend que des parties homogenes lineaires
pourtant on obtient une reponse (fausse) avec:
sol:=rsolve(u(n+1)=(1-u(n))*(1/6)/2^n,u(n),u(1)=1/6)
normal(seq([n,sol[0],round(sol[0],5)],n,1,10))
A comparer avec:
u(n):=si n==1 alors 1/6 sinon (1-u(n-1))*(1/6)/2^(n-1) fsi;
seq([n,u(n),round(u(n),5)],n,1,10)
rsolve
Modérateur : xcasadmin
Re: rsolve
bon, j'arrive a corriger pour la recurrence homogene
ca renvoie
[-(-1/6)^n*(1/2)^(n^2/2-n/2)]
mais apres je ne sais pas faire la recherche d'une solution particuliere.
Code : Tout sélectionner
diff maple.cc maple.cc~
2320,2321c2320
< gen q0r0=r2e(q0,v,contextptr)/r2e(r0,v,contextptr);
< gen res=pow(subst(normal(l/pn,contextptr),n,0,false,contextptr),n,contextptr)*simplify(product(P,v,n,0,n-1,contextptr)/product(Q,v,n,0,n-1,contextptr),contextptr)*pow(q0r0,n*(n-1)/2,contextptr);
---
> gen res=pow(subst(normal(l/pn,contextptr),n,0,false,contextptr),n,contextptr)*simplify(product(P,v,n,0,n-1,contextptr)/product(Q,v,n,0,n-1,contextptr),contextptr);
2325,2326d2323
< if (!is_one(q0r0))
< return gensizeerr("Unable to find particular solution, general solution is "+res.print(contextptr));
[-(-1/6)^n*(1/2)^(n^2/2-n/2)]
mais apres je ne sais pas faire la recherche d'une solution particuliere.
Re: rsolve
il est peu probable qu'on puisse trouver l'expression de u(n)
le message devrait suffire
le message devrait suffire
Re: rsolve
pour l'instant ce sera une erreur, mais peut-etre qu'on peut faire un truc genre variation de la constante...