====== Differences ====== This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
gibson:teaching:fall-2012:math445:lab10 [2012/11/19 13:21] gibson |
gibson:teaching:fall-2012:math445:lab10 [2013/11/06 19:01] (current) gibson [Part A: pcolor, meshgrid, shading, subplot] |
||
---|---|---|---|
Line 4: | Line 4: | ||
- | ===== A ===== | + | ===== Part A: pcolor, meshgrid, shading, subplot ===== |
- | Skim the Matlab documentation for ''linspace, meshgrid,'' and ''pcolor''. Create a 2D mesh from −π to π with 30 points in | + | Skim the Matlab documentation for ''linspace, meshgrid,'' and ''pcolor''. Create a 2D mesh from −π to π with 30 points in both the //x// and //y// directions. Then for each position in the mesh let //z = cos(x) sin(y)//. Use ''pcolor,'' ''axis equal,'' and ''axis tight'' to generate the figure on the left. But don't you hate those ugly black lines? You can get rid of them with the ''shading'' command. Use ''subplot'' and the ''shading'' command to generate the figure on the right |
- | both the //x// and //y// directions. Then for each position in the mesh let //z = cos(x) sin(y)// and use | + | |
- | ''pcolor'' to generate Figure 1. | + | |
- | {{ :gibson:teaching:fall-2012:math445:lab10-fig1.png?nolink&300 |}} | + | {{:gibson:teaching:fall-2012:math445:a.png?nolink&300|}} {{:gibson:teaching:fall-2012:math445:lab10-fig2.png?nolink&300|}} |
- | The worst things about Figure 1 is the black lines of the grid | ||
+ | ===== Part B: surf ===== | ||
+ | Create a 2D mesh from −π to π with 20 points in both the ''x'' and ''y'' directions, let ''z = cos(x) sin(y)'' pointwise, and then recreate this figure using the ''surf'' and ''colorbar'' commands. | ||
+ | {{:gibson:teaching:fall-2012:math445:lab10-fig3.png?400|}} | ||
+ | ===== Part C: surf in the shade ===== | ||
+ | Create a 2D mesh from −10 to 10 with 100 points in both the ''x'' and ''y'' directions, | ||
+ | let $r = \sqrt{x^2 + y^2}$ and ''%%z = 5 sin(r)/r%%''. Then recreate Figure 4 using the ''surf'' and ''shading'' commands. | ||
+ | {{:gibson:teaching:fall-2012:math445:lab10-fig4.png?500|}} | ||
Attribution: based on Prof. Mark Lyon's "Advanced Graphics" lab for Math 445, which was adapted from an [[http://yapso.sourceforge.net/demo/demo.html | Octave demo]]. | Attribution: based on Prof. Mark Lyon's "Advanced Graphics" lab for Math 445, which was adapted from an [[http://yapso.sourceforge.net/demo/demo.html | Octave demo]]. | ||
+ | |||
+ | |||
+ | ===== Part D: surf 'n' subplot ===== | ||
+ | |||
+ | Create a 2D mesh from −π to π with 100 points in both the x and y directions and | ||
+ | then recreate Figure 5, using the functions ''z = cos(x/2) cos(y/2)'', ''z = sin(x) cos(y/2),'' | ||
+ | ''z = cos(x/2) sin(y)'', and ''z = sin(x) sin(y)''. | ||
+ | |||
+ | {{:gibson:teaching:fall-2012:math445:lab10-fig5.png?500|}} | ||
+ | |||
+ | ===== Part E: mystery plot ===== | ||
+ | |||
+ | |||
+ | Enter the following code into a script file, save the figure produced as a '.jpg' or '.png' | ||
+ | image, and include it with your project. What does the image produce? What is the role of the 'C' | ||
+ | variable? | ||
+ | |||
+ | <code> | ||
+ | [phi,theta] = meshgrid(linspace(0,2*pi,100)); | ||
+ | X=(cos(phi) + 3) .* cos(theta); | ||
+ | Y=(cos(phi) + 3) .* sin(theta); | ||
+ | Z=sin(phi); | ||
+ | C=sin(3*theta); | ||
+ | surf(X,Y,Z,C) | ||
+ | shading interp | ||
+ | </code> | ||
+ | |||
+ | ===== Bonus ===== | ||
+ | |||
+ | Draw a Klein bottle in Matlab. Feel free to search the web, but understand whatever you use. | ||
+ | |||
+ | Attribution: This lab is adapted from Prof.Mark Lyon's Math 445 Advanced Graphics lab, which is adapted from Octave demos at [[http://yapso.sourceforge.net/demo/demo.html]]. |