Bonjour à tous,
Je suis nouveau et c'est mon premier message, autant dire que ce sera surement bien moins que parfait comme description d'un problème à résoudre. J'ajoute que je débute en programation matlab/octave et que donc je ne comprends pas tout !
Je suis en fac et je me casse la tête sans trouver la solution sur un exercice que notre prof nous a donné.
Il s'agit de modéliser en 3 dimensions les lignes de champ électriques dans un fil carré infini de type cœur/gaine. Le cœur étant a un potentiel de 1 V, on cherche donc la "forme" des lignes de champ entre le cœur et la gaine où le potentiel est non défini. A l’extérieur du fil, le potentiel est de 0. Le coeur mesure 1/10 du coté du fil et est situé en son centre.
Je vais inclure ce que j'ai deja fait (je précise que c'est sous Octave et non Matlab, mais on m'a dit que c'était la même chose à quelques détails près), et peut être que vous pourrez me donner des pistes pour résoudre cette question !
Le programme me retourne l'erreur:
Merci d'avance."Index exceeds matrix dimension".
Merci pour vos conseils !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50 figure; hold on; %initialisation i=linspace(0,101,100); j=linspace(0,101,100); for i=(2:99) for j=(2:99) v=0; endfor endfor for i=(45:55) for j=(45:55) v=1; endfor endfor %calcul ; for n=(1:10) for i=(2:99) v2(1,1)=1; for j=(2:99) v2(i,j)=0.25*(v(i+1,j)+v(i-1,j)+v(i,j+1)+v(i,j-1)); endfor v2(100,100)=0; endfor v=v2 endfor %tracage i=linspace(0,1,100); j=linspace(0,1,100); plot3(i,j,v)![]()
Partager