<s>[INST] import numpy as np
import math
import matplotlib.pyplot as plt

# define the model
def func(x):
    return 3*sin(x)

# generate some noisy data
x_data = np.linspace(-2 * math.pi, 2 * math.pi, 100)
y_data = func(x_data) + 0.2 * np.random.normal(size=len(x_data))

# plot the data
plt.plot(x_data, y_data, 'ro', label='Data')
plt.title('Noisy Data')
plt.legend()
plt.show()

I have this code which generates noisy data with the function y=3sin(x). I want to make this function non-linear. To do this, I would like to introduce a parameter that controls the "frequency" of the sine function, so the function will look more like y=3sin(ωx). How can I modify the code snippet above to achieve this?[/INST]