Mirror of countourf on X, Y axis

3 Ansichten (letzte 30 Tage)
ayoub
ayoub am 7 Aug. 2014
Kommentiert: Sara am 7 Aug. 2014
Hello everyone,
I'm working on 2d unsteady heat transfer modeling using Fortran. i have my results (temperature field) but only on 1/4 of my rectangel because i have (symetrical Boundary conditions).
I drew the results using matlab (countourf (x,y,z...), z=temperature, on 1/4 of the rectangle. can anyone of you explain me how to draw the temperature field on the entire rectangle ?? because it's symetrical, i would like to use mirror effect on x y axis. (-x-y) (-x+y) (x-y)
i don't wanna to multiply dimension of each vector *4, i tried it, it worked but very very slow.
there is my code : close all; clear;clc; a=load('new4.txt'); N=100
x=a(:,1); x coord y=a(:,2); y coord z=a(:,3);% temperature vetor
methode='v4'; Xmin = min(x); Xmax = max(x); Ymin = min(y); Ymax = max(y);
X =linspace(Xmin,Xmax,N); Y =linspace(Ymax,Ymin,N);
[X,Y] = meshgrid(X,Y);
Z = griddata(x,y,z,X,Y, methode); [c]=contourf(+X,+Y,Z,10); .
Thank you in advance.

Akzeptierte Antwort

Sara
Sara am 7 Aug. 2014
Look at the following example. If x and y start from 0, you can repeat the contour command 4 times. otherwise, you need to translate your coords.
x = 0:0.1:10;
y = -0:0.1:10;
[x,y]= meshgrid(x,y);
z = x.^2+y.^2;
figure
hold on
contourf(x,y,z)
contourf(-x,y,z)
contourf(x,-y,z)
contourf(-x,-y,z)
xlim([-10 10])
ylim([-10 10])
  2 Kommentare
ayoub
ayoub am 7 Aug. 2014
Thank you,
I did it finally figure
hold on %X =linspace(Xmin,Xmax,N); %Y =linspace(Ymax,Ymin,N);
[X,Y] = meshgrid(X,Y);
Z = griddata(x,y,z,X,Y, methode);
[c]=contourf(+X,-Y,Z,10); [c]=contourf(+X,-Y,Z,10); [c]=contourf(-X,-Y,Z,10); [c]=contourf(-X,+Y,Z,10); [c]=contourf(+X,+Y,Z,10);
axis equal tight
but the grid is gone :(. why?
Sara
Sara am 7 Aug. 2014
Add this at the end
set(gca,'layer','top');
grid on

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Contour Plots finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by