Bonjour à tous, je débute en Scilab et j'essaye de comprendre par des programmes. Par exemple, j'essaye de faire fonctionner ce programme ( qui trace l'interpolée d'une fonction )
"function Traceinterpolee(f,a,b)
h=b-a;c=(a+b)/2;
d=2*(f(c)-f(a))/h;
e=2*(f(a)+f(b)-2*f(c))/h;
x=linspace(a,b)'
z=f(a)+d*(x-a)+e*(x-a).*(x-c);
y=f(x);
plot2d([x,x],[y,z])
endfunction
f=input("entrer le nom de la fonction a interpoler","string")
inf=input("ainsi que la borne inf de l''intervalle")
sup=input("et sa borne sup")
Traceinterpolee(evstr(f),inf,s up)
'
Voici mes questions :
1) Quand j’exécute le programme, il me demande une fonction. Cela fonctionne avec les fonctions déjà définies dans Scilab ( sin, cos ... ). Comment puis-faire pour utiliser le programme sur des fonctions plus compliquées ? Quand je tape par exemple, sin(x)*1000*exp(x), ça bloque. Plus généralement, comment définir une fonction?
2) Parfois j'ai beau exécuter le programme, il ne se lance pas, j'ai juste " exec('C:\Users\sophie\Document s\Scilab exos\Traceinterpolee.sci', -1) ". Comment faire pour le relancer, sans quitter Scilab ?
Merci d'avance!
-----