π
<-

Commande pour faire somme ou produit des termes d'une liste

Pour le TI-Basic sur Nspire

Commande pour faire somme ou produit des termes d'une liste

Unread postby fchiappini53 » 06 Feb 2012, 17:36

Salut,

Je suis en train de tenter (^^) de faire un programme pour que la calculatrice me donne directement les marges de gain et de phase d'un système asservi (pour ceux qui ne savent, ma question ne nécessite pas ces connaissances ^^).

Pour se faire, j'ai besoin de calculer la phase d'une fonction de transfert.
Le soucis, c'est que si l'on prend, pour exemple, la fonction :
H(p)=((15*(1+5*p))/(p*(1+0.1*p)*(p^(2)+6.4*p+16))) (avec p = i * w)

En faisant angle(h(p)), la calculatrice renvoie effectivement un résultat, mais totalement indigeste, et qui a pour conséquence qu'elle ne sait pas résoudre cette équation pour trouver une pulsation, ou une phase donnée.

(pour illustrer, voilà la fonction renvoyée par la calto : arctan(((10.*w)/(w^(2)-22.2222)))+((π*sign(w*(w^(2)-22.2222)))/(2)).
Si on la calcule à la main, cela donne : -π/2 - arctan(0,1w) - arctan(0.3w))

D'où mon idée : décomposer cette fonction de transfert en produit de fonctions de transferts simples, lui faire calculer séparément chaque phase (qu'elle sait mettre sous forme simple), les mettre sous forme d'une liste, et en faire le produit.

Je sais que sur Maple, il existe la fonction convert ([],*) qui permet de faire le produit, la somme, ou n'importe quoi, des termes de la liste.

Existe t'il l'équivalent sur la Nspire, ou auriez vous une idée ?

Merci !
User avatar
fchiappini53
Niveau 3: MH (Membre Habitué)
Niveau 3: MH (Membre Habitué)
Level up: 84%
 
Posts: 12
Joined: 01 Oct 2011, 16:47
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: PSI

Re: Commande pour faire somme ou produit des termes d'une li

Unread postby Bisam » 06 Feb 2012, 18:05

Avec la Nspire, il existe une fonction "sum" ainsi qu'une fonction "product" qui permettent respectivement de faire la somme ou le produit des termes d'une liste.
La Nspire sait d'ailleurs aussi faire le même calcul pour chacun des termes d'une suite (comme calculer sa transformée par exemple) : il suffit la plupart du temps de l'appliquer à la liste elle-même.
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile

Re: Commande pour faire somme ou produit des termes d'une li

Unread postby fchiappini53 » 06 Feb 2012, 18:10

Salut Bisam,

OK, c'était tellement simple que je n'y avais même pas pensé :D:

Merci, je vais m'occuper de ça de suite ^^
User avatar
fchiappini53
Niveau 3: MH (Membre Habitué)
Niveau 3: MH (Membre Habitué)
Level up: 84%
 
Posts: 12
Joined: 01 Oct 2011, 16:47
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: PSI

Re: Commande pour faire somme ou produit des termes d'une li

Unread postby fchiappini53 » 06 Feb 2012, 18:32

De retour ! Effectivement, ça marche nickel.
Mais du coup, j'ai un autre soucis :

Pour la fonction de transfert ci dessus, je l'ai donc découpé comme ceci :
l={((5)/(p)),((1)/(1+0.15*p)),((1)/(1+0.3*p))}.

J'ai donc fait ensuite product(l) pour obtenir la fonction de transfert. Mais du coup, il fait "le produit", et remplace p par i*w. Du coup, pour calculer le module, ça me fait un calcul approché qui apporte une imprécision pour résoudre l'équation.

Du coup, serait il possible de lui "faire garder" la variable p ?
User avatar
fchiappini53
Niveau 3: MH (Membre Habitué)
Niveau 3: MH (Membre Habitué)
Level up: 84%
 
Posts: 12
Joined: 01 Oct 2011, 16:47
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: PSI

Re: Commande pour faire somme ou produit des termes d'une li

Unread postby Bisam » 06 Feb 2012, 18:41

Si la calculette remplace "p" par "i*w", c'est que tu le lui as demandé ! Elle ne le fait pas toute seule.
Il est probable que tu aies affecté la valeur i*w à la variable p.
Il suffit donc de l'effacer en tapant "Delvar p" et tout rentrera dans l'ordre.
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile

Re: Commande pour faire somme ou produit des termes d'une li

Unread postby fchiappini53 » 06 Feb 2012, 18:46

Mais justement, je veux qu'elle garde la valeur p dans le calcul, et non pas qu'elle la remplace par i*w. Mais, je ne sais pas si c'est possible.

Mais d'ailleurs, je me suis aperçu d'un autre soucis : en faisant sum et product, le résultat renvoyé n'est plus une fonction dépendant de w (alors qu'on a du p dans la liste pourtant), mais une constante.

Huhu, je penserai pas que cela serait aussi complexe ^^
User avatar
fchiappini53
Niveau 3: MH (Membre Habitué)
Niveau 3: MH (Membre Habitué)
Level up: 84%
 
Posts: 12
Joined: 01 Oct 2011, 16:47
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: PSI

Re: Commande pour faire somme ou produit des termes d'une li

Unread postby Bisam » 06 Feb 2012, 18:49

Je ne comprends rien à tes réponses.
Il va falloir être plus précis.
Qu'as-tu au départ ? Que veux-tu à l'arrivée ? Est-il nécessaire pour le calcul de remplacer "p" par "i*w" ? Et bien d'autres choses encore.
Je ne connais presque rien aux calculs que tu veux faire...

Ce qui est sûr, c'est que la Nspire ne sait pas manipuler les fonctions (contrairement à Maple, par exemple). Elle ne manipule que des expressions.
On peut lui faire calculer la valeur des fonctions mais pas définir un objet qui serait la somme ou le produit de plusieurs fonctions.
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile


Return to Nspire-Basic

Who is online

Users browsing this forum: ClaudeBot [spider] and 2 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
886 utilisateurs:
>803 invités
>76 membres
>7 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)