Problema funzione Matlab

di il
1 risposte

Problema funzione Matlab

Buongiorno a tutti
con riferimento al seguente codice

clear all
clf
clc

%% Risoluzione del problema di Laplace nel dominio 0<x<Lx 0<y<Ly
% V_xx + V_yy = 0
% V(x,0) = 0
% V(Lx,y) = 0
% V(0,y) = 0
% V(x,Ly) = Vo

%% Dati
n_max = 50;
Lx = 1;
Ly = 4;
Vo = 1;

X = linspace(0,Lx,100);
Y = linspace(0,Ly,length(X));
[x,y] = meshgrid(X,Y);

%% Soluzione
V = @(x,y,n,Vo,Lx,Ly) ((4.*Vo)./(n.*pi.*sinh(n.*pi.*Ly./Lx))).*sinh(n.*pi.*y./Lx).*sin(n.*pi.*x./Lx);

%% Funzione Potenziale
sol = 0;

for n = 1:2:n_max
    sol = sol + V(x,y,n,Vo,Lx,Ly);
end
V = sol;

%% Plot
surf(x,y,V);
colorbar
xlabel('x');
ylabel('y');
grid on
In particolare non riesco a capire perché se pongo Ly = 4 il risultato che ottengo è il seguente:
1.jpg
1.jpg

invece, se pongo Ly = 5 ( senza cambiare alcun altro parametro ), il risultato che ottengo è il seguente:
2.jpg
2.jpg

Spero che qualcuno mi aiuti a capire dove abbia commesso errori, grazie

PS: ho ricontrollato più volte la soluzione del problema e risulta essere corretta, quindi suppongo che io stia commettendo errori nell'implementarla

1 Risposte

Devi accedere o registrarti per scrivere nel forum
1 risposte