rsolve

Utilisation de Xcas

Modérateur : xcasadmin

alb
Messages : 1320
Inscription : ven. août 28, 2009 3:34 pm

rsolve

Message par alb » ven. mars 13, 2015 3:43 pm

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)

parisse
Messages : 5740
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: rsolve

Message par parisse » sam. mars 14, 2015 10:41 am

bon, j'arrive a corriger pour la recurrence homogene

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));
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.

alb
Messages : 1320
Inscription : ven. août 28, 2009 3:34 pm

Re: rsolve

Message par alb » dim. mars 15, 2015 7:51 am

il est peu probable qu'on puisse trouver l'expression de u(n)
le message devrait suffire

parisse
Messages : 5740
Inscription : mar. déc. 20, 2005 4:02 pm
Contact :

Re: rsolve

Message par parisse » dim. mars 15, 2015 7:59 am

pour l'instant ce sera une erreur, mais peut-etre qu'on peut faire un truc genre variation de la constante...

Répondre