2016-01-18 3 views
0

У меня есть две переменные x и y. Я решил построить квадратный корень их разности, используя контур следующим образом:Плоский квадратный корень в контуре

x=0:0.1:100; 
y=0:0.1:100; 
G=sqrt(x-y); 
test2 = G; 
test2(~(G<0)) = nan; 
[C,h]=contourf(x,y,G,'ShowText','off'); 
set(gca,'FontSize',20) 

Однако я получаю эту ошибку: Ошибка с помощью contourf (строка 69) Z должен быть размер 2х2 или больше.

Если это разрешено, я хочу достичь своей цели и построить фактическую функцию, которая полагается на сами х, y и G следующим образом: Функция = 2 sqrt (x)/G * acoth ((sqrt (x) + г/2)/G)

ответ

1

Я приведу пример

x=0:0.1:100; 
y=0:0.1:100; 
[X, Y]=meshgrid(x,y); 
G=sqrt(X-Y); 
test2 = G; 
test2(~(G<0)) = nan; 
[C,h]=contourf(X,Y,abs(G),'ShowText','off'); 
set(gca,'FontSize',20) 

Вход для контура должен быть 2D массив, но ваши массивы 1D.

Здесь G - это комплексное число. Когда вы построите G, вы должны построить график G.

Результат будет таким, как показано ниже.

enter image description here

Что касается вашей функции,

H=((2*sqrt(X))./G).*acoth((sqrt(X) + Y/2)./G); 
Смежные вопросы