Note
Click here to download the full example code
Function1D objectΒΆ
This example shows how to use the Function1D object to analyze and plot results.

Out:
/Users/gmatteo/git_repos/abipy/abipy/examples/plot/plot_funcs.py:42: UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
plt.show()
import numpy as np
import matplotlib.pyplot as plt
from abipy.abilab import Function1D
# Build mesh [0, 2pi] with 100 points.
mesh = np.linspace(0, 2*np.pi, num=100)
# Compute sine function.
sine = Function1D.from_func(np.sin, mesh)
# Call matplotlib to plot data.
fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)
# Plot sine.
sine.plot_ax(ax, label="sin(x)")
# Spline sine on the coarse mesh sx, and plot the data.
sx = np.linspace(0, 2*np.pi, num=25)
splsine = sine.spline(sx)
plt.plot(sx, splsine, "ro", label="splined sine")
# Compute the 1-st and 2-nd order derivatives
# with finite differences (5-point stencil).
for order in [1,2]:
der = sine.finite_diff(order=order)
der.plot_ax(ax, label="D sin(x) %d" % order)
# Integrate the sine function and plot the results.
(1 - sine.integral()).plot_ax(ax, marker=".", label=r"$1 - \int\,\sin(x)\,dx$")
plt.legend(loc="best")
plt.show()
Total running time of the script: ( 0 minutes 0.252 seconds)