2011-11-06 5 views
0

J'écris un code pour la méthode des éléments finis adaptatifs dans 1d. J'ai un intervalle disons [0,1] et dans la première itération j'ai un maillage, x = 0: .25: 1 et dans la deuxième itération je voudrais diviser le deuxième et dernier segment en 3 et 5 segments. Donc, le vecteur mis à jour, x a 11 nœuds. Ce processus sera répété encore et encore avec différents segments. Je suis vraiment confus comment puis-je mettre à jour le vecteur x?Réorganisation d'un vecteur dans matlab

Répondre

0

Supposons que votre vecteur x possède n éléments. Et vous voulez mettre à jour le i-ième segment et le diviser en k parties. puis:

x = [x(1:i-1), x(i):((x(i+1) - x(i))/k):x(i+1), x(i+2:n)]; 
1

Une façon de le faire est:

x = 0:0.25:1; 
xrefined3 = [x(1):0.25/3:x(2) x(2:end-1) x(end-1):0.25/3:1]; 
xrefined5 = [x(1):0.25/5:x(2) x(2:end-1) x(end-1):0.25/5:1]; 
Questions connexes