Courbe

Fermé
benitoo24 Messages postés 3 Date d'inscription dimanche 17 juin 2018 Statut Membre Dernière intervention 17 juin 2018 - 17 juin 2018 à 18:28
benitoo24 Messages postés 3 Date d'inscription dimanche 17 juin 2018 Statut Membre Dernière intervention 17 juin 2018 - 17 juin 2018 à 19:18
s'il vous plait j'aimerais ecrire une fonction qui recoit en entrer une liste d'abscisse , une liste d'ordonnee et un entier n renvoyant un polynome de dregre au plus n passant au plus pret des points x et y.
pouvez vous m'aider ?

1 réponse

NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 330
17 juin 2018 à 18:54
Nous ne feront pas votre exercice à votre place.
Merci de décrire précisément votre problème et en postant le code déjà réalisé.

Cliquez ici pour des conseils d'écriture des messages et ici concernant les devoirs scolaires ou PFE.

Pour poster votre code, merci de penser à la coloration syntaxique.
0
benitoo24 Messages postés 3 Date d'inscription dimanche 17 juin 2018 Statut Membre Dernière intervention 17 juin 2018
17 juin 2018 à 19:12
en faite je demande de m'aider pas de le faire parceque le travail consitait a realiser le code du gradient puis de l'utiliser pour la recherche d'une zero chose que j'ai pu realiser ensuite me demande de l'utiliser pour l'optimisation (c'est a dire determiner les coefficients d'un polynome passant au mieux par des points donner ) ce que je ne comprend pas.
voici le code :

 function [c] = descente (start,eps,fp)
%descente Summary of this function goes here
% Detailed explanation goes here

seuil=1e-4; % on choisit un seuil
c=start; % initialisation de c
fpc=fp(c); % initialisation dze fpc pour ne pas avoir d'erreur
epsv=eps*ones(size(start)); % on choisit un epsilonv parcequ'il peut
% changer en fonction des pentes et
% des directions en fonction de la forme
while abs(fpc)>seuil

c=c-epsv.*fpc; % calcul de c
fpc=fp(c); % optimisation pour ne pas avoir a calculer deux fois fp(c)
end
0
benitoo24 Messages postés 3 Date d'inscription dimanche 17 juin 2018 Statut Membre Dernière intervention 17 juin 2018
17 juin 2018 à 19:18
sa c'est la graine qui tire en aleatoire un vecteur uniforme :

function [u] = graine(min_param,max_param)
%graine Summary of this function goes here
% la fonction graine renvoie un vecteur d'une ligne et 2 colone et les
% valeurs de matrice que'elle renvoie sont compris entre la valeur minimum
% de min_param et la valeur minimum de max_param et la valeur maximum de
% min_param et la valeur maximum de max_param

n=length(min_param); % taille de min_param
u= (max_param-min_param).*rand(1,n)+min_param; % le vecteur tiré en aleatoire

end


le test de descente :

 function [ out ] = fab( u )
%fab Summary of this function goes here
% definition de la fonction dont le gradient sera calculée
x=u(1);
y=u(2);
out=(x-1).^2+(y-2).^2+1;
end


 function [ out ] = fpab(u)
%fpab Summary of this function goes here
% cette fonction determine de gradient
x=u(1);
y=u(2);
out=2*(x-1);
out=[out,2*(y-2)];
end


%% test de la fonction desente 
f=@(y)fab(y);
fp=@(y)fpab(y);
min_p=[-100,-100];

max_p=[100,100];

pas=0.5;
debut=graine(min_p,max_p);

descente(debut,pas,fp)
0