Assignment: Create a surface and contour plot of function z-f(x,y) [-5,5] by [-5,51. Take a pick to plot from any of the choices below. (01) f(x,y) = x*y**3-**** (02) f(x,y) = (03) f(x,y) = (04) f(x, y) = cos(abs(x)+abs(y)) - - Use at least 500 points in each direction to discretize domain and create the grid. Make the surface plot red and without grid lines. (***2+3*u**2) *exp(-x**2-y**2) -1/(x**2+y**2) - For contour plot, specify contour levels to go from minimum and maximum 2 values on the entire domain and include at least 15 contour levels. - - Pick a colormap you like I 777 ## Create data import numpy as np import pyvista as pv

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
Assignment: Create a surface and contour plot of function z=f(x,y)
[-5,5] by [-5,51. Take a pick to plot from any of the choices below.
(01) f(x,y) = x*y**3-y*x**3
(02) f(x,y) = (x**2+3*y**2) *exp(-x**2-y**2)
(03) f(x, y) = -1/(x**2+y**2)
(04) f(x, y) = cos(abs(x)+abs(y))
- Use at least 500 points in each direction to discretize
domain and create the grid.
- Make the surface plot red and without grid lines.
- For contour plot, specify contour levels to go from minimum and
maximum Z values on the entire domain and include at
least 15 contour levels.
- Pick a colormap you like
I
## Create data
import numpy as np
import pyvista as pv
Transcribed Image Text:Assignment: Create a surface and contour plot of function z=f(x,y) [-5,5] by [-5,51. Take a pick to plot from any of the choices below. (01) f(x,y) = x*y**3-y*x**3 (02) f(x,y) = (x**2+3*y**2) *exp(-x**2-y**2) (03) f(x, y) = -1/(x**2+y**2) (04) f(x, y) = cos(abs(x)+abs(y)) - Use at least 500 points in each direction to discretize domain and create the grid. - Make the surface plot red and without grid lines. - For contour plot, specify contour levels to go from minimum and maximum Z values on the entire domain and include at least 15 contour levels. - Pick a colormap you like I ## Create data import numpy as np import pyvista as pv
Expert Solution
Step 1: The Algorithm of the code:-

1. Import necessary libraries:
   - Import NumPy for numerical computations.
   - Import PyVista for creating the surface plot.
   - Import Matplotlib for creating the contour plot.

2. Define the functions:
   - Define the functions `func_01` to `func_04` to represent the mathematical functions `z = f(x, y)` that you can choose from.

3. Create a function to generate the grid:
   - Define a function called `create_grid(func)` that takes a function as an argument.
   - Within this function:
     - Generate evenly spaced values for `x` and `y` using `np.linspace()` to create a grid in the domain `[1, 5]` with 51 points along each axis.
     - Use `np.meshgrid()` to create a grid of `(x, y)` values.
     - Calculate the corresponding `z` values by applying the provided function to the `(x, y)` grid points.
     - Return the `X`, `Y`, and `Z` arrays representing the grid.

4. Choose the function to visualize:
   - Call the `create_grid()` function with one of the functions (e.g., `func_01`) to generate the grid for that function.

5. Create a PyVista structured grid:
   - Create a PyVista structured grid using `pv.StructuredGrid()` with the generated `X`, `Y`, and `Z` arrays from step 4.
   - This structured grid represents the 3D surface to be plotted.

6. Create a surface plot using PyVista:
   - Initialize a PyVista plotter object (`p`) for creating the surface plot.
   - Add the structured grid to the plot using `p.add_mesh()`.
   - Customize the appearance of the surface plot:
     - Set the color of the surface to red.
     - Hide grid lines using `show_edges=False`.
   - Display the surface plot using `p.show()`.

7. Create a contour plot using Matplotlib:
   - Create a new Matplotlib figure using `plt.figure()`.
   - Generate contour lines using `plt.contourf()` with the `X`, `Y`, and `Z` arrays:
     - Specify the number of contour levels (e.g., 15).
     - Choose a colormap (e.g., 'viridis').
   - Add a colorbar to the plot using `plt.colorbar()`.
   - Label the axes (`plt.xlabel()` and `plt.ylabel()`).
   - Set a title for the contour plot (`plt.title()`).
   - Display the contour plot using `plt.show()`.

8. Run the code:
   - Ensure that you select the desired function to visualize by calling `create_grid()` with the appropriate function (e.g., `create_grid(func_01)`).

steps

Step by step

Solved in 4 steps with 2 images

Blurred answer
Knowledge Booster
Image Element
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education