'poly_order': 2, 'diff_order': 3 } } n_runs = 5 for run_idx in np.arange(n_runs): X_train, y_train, rand_idx = dataset.create_dataset(x_grid.reshape(-1, 1), t_grid.reshape(-1, 1), n_samples=1000, noise=0.1, random=True, return_idx=True) theta = dataset.library(x_grid.reshape(-1, 1), t_grid.reshape(-1, 1), poly_order=2, deriv_order=3)[rand_idx, :] dt = dataset.time_deriv(x_grid.reshape(-1, 1), t_grid.reshape(-1, 1))[rand_idx, :] model = DeepMod(**config) optimizer = torch.optim.Adam(model.parameters(), betas=(0.99, 0.999), amsgrad=True) train(model, X_train, y_train, optimizer, 20000, loss_func_args={ 'library': torch.tensor(theta),
import numpy as np from phimal_utilities.data.burgers import BurgersDelta from phimal_utilities.data.diffusion import DiffusionGaussian from phimal_utilities.data import Dataset x = np.linspace(-1, 1, 50) t = np.linspace(1e-4, 5, 20) x_grid, t_grid = np.meshgrid(x, t, indexing='ij') v = 0.1 A = 1.0 dataset = Dataset(DiffusionGaussian, D=1.0, sigma=0.1, x0=-0.1) dataset.library(x_grid.reshape(-1, 1), t_grid.reshape(-1, 1))