Salut,
J’essaie d’interpoler les valeurs de vitesse sur une gamme de hauteurs et de temps pour ensuite l’enregistrer dans une matrice. J’ai du mal à enregistrer / interpoler correctement les données.
Lorsque j’ai utilisé Ninterp (:, t) = interp2 (ADCP.t, ADCP.Depth, ADCP.N, time_in, Z); J’ai pu le faire fonctionner pour t = 1: 1: 100, mais j’ai besoin qu’il fonctionne pour différents pas de temps, puis juste 1.
ADCP.N – Valeurs de vitesse nord en fonction de la profondeur et du temps (82 × 1000)
ADCP.t – vecteur temps datenum du capteur
ADCP.Depth – profondeur de la colonne d’eau
time_in – un vecteur de temps arbitraire (peut ne pas être un entier) pour interpoler à travers
Z – une plage arbitraire de hauteurs à interpoler
Z = [150:-1:1];Nq = zeros(length(ADCP.t));for t=1:.25:100 time_in = tStart+datenum([0,0,0,0,0,t]); Ninterp = interp2(ADCP.t,ADCP.Depth,ADCP.N,time_in,Z); Nq = Ninterp(t) end
Meilleure réponse
Z = [150:-1:1];Nq = zeros(length(ADCP.t));t=1:0.25:100;clear Ninterpfor i=length(t):-1:1time_in = tStart+datenum([0,0,0,0,0,t(i)]);Ninterp(:,i) = interp2(ADCP.t,ADCP.Depth,ADCP.N,time_in,Z);end