Bonjour à tous.
Je me présente j’ai 36 ans et je travaille dans un bureau d’étude électronique.
Ma HP 48G venant de rendre l’âme, j’en ai profité pour acheter la TI Nspire CAS que je découvre avec satisfaction.
Cependant j’ai un problème d’utilisation d'apparence simple mais que je n’arrive pas à résoudre, je m’explique : sur ma HP j’avais une application (HP SOLVE) qui me permettait de résoudre des formules, par exemple la formule la plus simple qu’il soit : la loi d’ohm : u = r.i
Je rentrais donc 2 valeurs connues de l’équation et l’application me donnait le résultat et ce, qu’importe l'ordre les paramètres, par exemple je demandais i en fonction de r et u ….
J’ai bien regardé la création et l’application des bibliothèques mais il n’y a pas de permutation de formule automatique, ce qui fait l’objet de ma question pour savoir si je suis déjà sur le bon chemin car je suis un peu perdu devant la richesse de fonctionnalités de la TI.
Merci pour votre aide.
[Résolu] Solveur formule de physique
6 posts
• Page 1 of 1
-
sylvain535
Niveau 2: MI2 (Membre Initié)- Posts: 3
- Joined: 06 Jan 2011, 00:00
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: terminé
Re: [Résolu] Solveur formule de physique
Bonjour,
Effectivement l' "Equation Library" sur HP-48G/GX était géniale, allant même jusqu'à gérer les systèmes de formules physiques.
Je crois que les HP-49/50 n'ont rien proposé d'équivalent.
Sur TI-Nspire CAS, il va falloir faire tout ça dans une ligne de calcul, car les applications n'existent pas.
Je ne suis pas certain que cela marche dans tous les cas, notamment sur les systèmes d'équations complexes (car ça dépend du fonctionnement interne du moteur formel), mais je vous propose d'essayer quelque chose comme ça:
solve( la ou les équations physiques, l'inconnue à cherche)|les paramètres connus
Exemple:
Solve peut aussi bien retourner un résultat numérique que formel (si les données sont insuffisantes, ou si le moteur formel n'a pas réussi à s'en tirer...)
Effectivement l' "Equation Library" sur HP-48G/GX était géniale, allant même jusqu'à gérer les systèmes de formules physiques.
Je crois que les HP-49/50 n'ont rien proposé d'équivalent.
Sur TI-Nspire CAS, il va falloir faire tout ça dans une ligne de calcul, car les applications n'existent pas.
Je ne suis pas certain que cela marche dans tous les cas, notamment sur les systèmes d'équations complexes (car ça dépend du fonctionnement interne du moteur formel), mais je vous propose d'essayer quelque chose comme ça:
solve( la ou les équations physiques, l'inconnue à cherche)|les paramètres connus
Exemple:
- Code: Select all
solve(u=r*i,r)|u=5 and i=0.1
Solve peut aussi bien retourner un résultat numérique que formel (si les données sont insuffisantes, ou si le moteur formel n'a pas réussi à s'en tirer...)
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 42489
- Images: 17332
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: [Résolu] Solveur formule de physique
Merci pour votre réponse, cela me dépanne déja pas mal et m'a permis de découvrir l'instruction solve
J'ai donc essayer de pousser un peu plus en faisant un programme du genre :
en ayant défini bien évidement les variables avant de d'appeler la fonction.
Mais cela oblige à programmer un test conditionnel pour chaque variable, pas très esthétique et lourd (dommage que l'instruction switch n'existe pas)
J’ai donc essayé le programme suivant :
mais dans ce cas le programme me génère une erreur car il ne remplace pas inc par l'inconnu bien que j'ai essayer plein de notation différente.
Je pense qu'il me reste à écrire un programme sur pc pour générer automatiquement le code présenté dans le premier programme mais je dois dire que je suis un peu surpris que sur une telle machine le langage de programmation soit vraiment très restreint
Il parait que l'on peut programmer en C, mais dans ce cas peut-on accéder au librairie native de la calculatrice, je pense notamment à Solve...
J'ai donc essayer de pousser un peu plus en faisant un programme du genre :
- Code: Select all
Define LibPub ohm()=
Prgm
:Disp "Loi d'ohm :"
:Disp "u=r.i"
:RequestStr "inconnue ? :",inc
:If inc="r" Then
:Disp solve(u=r*i,r)
:EndIf
:If inc="u" Then
:Disp solve(u=r*i,u)
:EndIf
:If inc="i" Then
:Disp solve(u=r*i,i)
:EndIf
:EndPrgm
en ayant défini bien évidement les variables avant de d'appeler la fonction.
Mais cela oblige à programmer un test conditionnel pour chaque variable, pas très esthétique et lourd (dommage que l'instruction switch n'existe pas)
J’ai donc essayé le programme suivant :
- Code: Select all
Define LibPub ohm()=
Prgm
:Local inc
:Disp "Loi d'ohm : u=r*i"
:Disp "u=r.i"
:Request "u",u
:Request "r",r
:Request "i",i
:Request "inconnu?",inc
:Disp inc
:Return solve(u=r*i,inc)
:EndPrgm
mais dans ce cas le programme me génère une erreur car il ne remplace pas inc par l'inconnu bien que j'ai essayer plein de notation différente.
Je pense qu'il me reste à écrire un programme sur pc pour générer automatiquement le code présenté dans le premier programme mais je dois dire que je suis un peu surpris que sur une telle machine le langage de programmation soit vraiment très restreint
Il parait que l'on peut programmer en C, mais dans ce cas peut-on accéder au librairie native de la calculatrice, je pense notamment à Solve...
-
sylvain535
Niveau 2: MI2 (Membre Initié)- Posts: 3
- Joined: 06 Jan 2011, 00:00
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: terminé
Re: [Résolu] Solveur formule de physique
On peut effectivement programmer officieusement en C, mais:
- à ce jour il n'y a pas d'accès aux fonctions mathématiques spécifiques à l'OS
- les programmes C ne peuvent pas renvoyer un résultat sur la ligne de calcul
- à ce jour il n'y a pas d'accès aux fonctions mathématiques spécifiques à l'OS
- les programmes C ne peuvent pas renvoyer un résultat sur la ligne de calcul
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 42489
- Images: 17332
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: [Résolu] Solveur formule de physique
sylvain535 wrote:mais dans ce cas le programme me génère une erreur car il ne remplace pas inc par l'inconnu bien que j'ai essayer plein de notation différente.
Quelle est l'erreur ?
Je pense savoir ce que c'est, tu essaies de rentrer dans la popup une lettre, or Request correspond exactement à une ligne de commande dans l'application Calcul. Si tu rentres u dans la popup du Request, c'est comme si tu rentrais u dans Calcul. Pour faire abstraction de l'évaluation, il faudra utiliser RequestStr qui convertira l'entrée directement en chaîne de caractères sans faire d’évaluation.
Par exemple, voici un petit programme pour te rendre compte de la différence :
Define test()=
Prgm
Local u, inc
Request "u", u
Request "inc", inc
Disp inc
EndPrgm
Si j'appelle test() et si je rentre dans la popup "u" la valeur 1, puis, que dans la popup "inc" je rentre u, alors sera affiché 1
Si j'appelle test() et si je rentre dans la popup "u" la valeur 1, puis, que dans la popup "inc" je rentre 2 , alors sera affiché 2
Si j'appelle test() et si je rentre dans la popup "u" la valeur inc, j'obtiens une erreur de variable indéfinie.
En utilisant RequestStr, tu pourras faire des appels de variables par identifiant. Considérons la variable u qui vaut 1, et la chaine de caractère inc qui vaut "u".
Si je fais inc, j'obtiens "u"
Si je fais #inc, j'obtiens 1
-
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)- Posts: 6414
- Images: 22
- Joined: 27 Nov 2008, 00:00
- Location: 0x1AACC355
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: BAC+5: Epita (ING3)
Re: [Résolu] Solveur formule de physique
ha effectivement, je vois la différence maintenant avec le caractère "#", car avant dans ma formule, même en demandant l'inconnue avec RequestStr cela me générai une erreur lors du calcul de la solution
du coup plus besoin de programme pour générer mes formules, j'ai plus qu'a saisir mes constantes connu et d'appeler le programme tout simplement. Je vais de ce pas créer ma nouvelle bibliothèque et tester des formules plus complexes
je met la solutions pour ceux que ca intéresses :
Merci encore pour votre aide précieuse.

du coup plus besoin de programme pour générer mes formules, j'ai plus qu'a saisir mes constantes connu et d'appeler le programme tout simplement. Je vais de ce pas créer ma nouvelle bibliothèque et tester des formules plus complexes

je met la solutions pour ceux que ca intéresses :
- Code: Select all
Define LibPub ohm()=
Prgm
:Local inc
:Disp "Loi d'ohm : u=r*i"
:RequestStr "inconnu?",inc
:DelVar #inc
:Disp solve(u=r*i,#inc)
:EndPrgm
Merci encore pour votre aide précieuse.
-
sylvain535
Niveau 2: MI2 (Membre Initié)- Posts: 3
- Joined: 06 Jan 2011, 00:00
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: terminé
6 posts
• Page 1 of 1
Return to Problèmes divers / Aide débutants
Who is online
Users browsing this forum: ClaudeBot [spider] and 18 guests