From 2edcd4936233335737c52703aa70c358e42a9a42 Mon Sep 17 00:00:00 2001 From: dreamer2368 Date: Fri, 22 Nov 2024 00:59:20 +0000 Subject: [PATCH] deploy: 5258b2e4feba203bb81c2cbd85a309da23a76a35 --- .../autoapi/lasdi/latent_space/index.doctree | Bin 189648 -> 190064 bytes .../autoapi/lasdi/networks/index.doctree | Bin 181287 -> 181703 bytes .doctrees/environment.pickle | Bin 1581376 -> 1582626 bytes .../autoapi/lasdi/latent_space/index.rst.txt | 2 +- _sources/autoapi/lasdi/networks/index.rst.txt | 2 +- autoapi/lasdi/latent_space/index.html | 2 +- autoapi/lasdi/networks/index.html | 2 +- searchindex.js | 2 +- 8 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.doctrees/autoapi/lasdi/latent_space/index.doctree b/.doctrees/autoapi/lasdi/latent_space/index.doctree index 7ea133569fa63f489b3e97f70d24f4d6d79cac5c..6a74d6e9f356c58c40248152560b2b206d6ae674 100644 GIT binary patch delta 10474 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 diff --git a/.doctrees/autoapi/lasdi/networks/index.doctree b/.doctrees/autoapi/lasdi/networks/index.doctree index de4c5a1815d24d9cae1d8f6612604f3e114162e8..5e93d7f568e3c688d57278520235881228074c73 100644 GIT binary patch delta 6582 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 E7uzf}`2YX_ delta 6471 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 bq5$g;(U;r*7)hqLND^rbqy(J$Dop$@kVhLQ diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle index 0567b8dbef6d2ae9688688ddf851ac27b5f21d4b..cce2d8005d926231731e1f1b96434a43663808b0 100644 GIT binary patch literal 1582626 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

diff --git a/autoapi/lasdi/networks/index.html b/autoapi/lasdi/networks/index.html index d9021e1..cc9e4ee 100644 --- a/autoapi/lasdi/networks/index.html +++ b/autoapi/lasdi/networks/index.html @@ -630,7 +630,7 @@

Module Contents
  • Forward mode: 3d array of shape self.layer_sizes[-1], or 4d array of shape [self.batch_reshape[0]] + self.layer_sizes[-1]

  • -
  • Backward mode: nd array of shape batch_reshape

  • +
  • Backward mode: nd array of shape data_shape (equal to batch_shape)

  • diff --git a/searchindex.js b/searchindex.js index 7e9c72f..c7b87c8 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["autoapi/index", "autoapi/lasdi/enums/index", "autoapi/lasdi/fd/index", "autoapi/lasdi/gp/index", "autoapi/lasdi/gplasdi/index", "autoapi/lasdi/index", "autoapi/lasdi/inputs/index", "autoapi/lasdi/latent_dynamics/index", "autoapi/lasdi/latent_dynamics/sindy/index", "autoapi/lasdi/latent_space/index", "autoapi/lasdi/networks/index", "autoapi/lasdi/param/index", "autoapi/lasdi/physics/burgers1d/index", "autoapi/lasdi/physics/index", "autoapi/lasdi/postprocess/index", "autoapi/lasdi/timing/index", "autoapi/lasdi/workflow/index", "index"], "filenames": ["autoapi/index.rst", "autoapi/lasdi/enums/index.rst", "autoapi/lasdi/fd/index.rst", "autoapi/lasdi/gp/index.rst", "autoapi/lasdi/gplasdi/index.rst", "autoapi/lasdi/index.rst", "autoapi/lasdi/inputs/index.rst", "autoapi/lasdi/latent_dynamics/index.rst", "autoapi/lasdi/latent_dynamics/sindy/index.rst", "autoapi/lasdi/latent_space/index.rst", "autoapi/lasdi/networks/index.rst", "autoapi/lasdi/param/index.rst", "autoapi/lasdi/physics/burgers1d/index.rst", "autoapi/lasdi/physics/index.rst", "autoapi/lasdi/postprocess/index.rst", "autoapi/lasdi/timing/index.rst", "autoapi/lasdi/workflow/index.rst", "index.rst"], "titles": ["API Reference", "lasdi.enums", "lasdi.fd", "lasdi.gp", "lasdi.gplasdi", "lasdi", "lasdi.inputs", "lasdi.latent_dynamics", "lasdi.latent_dynamics.sindy", "lasdi.latent_space", "lasdi.networks", "lasdi.param", "lasdi.physics.burgers1d", "lasdi.physics", "lasdi.postprocess", "lasdi.timing", "lasdi.workflow", "LaSDI documentation"], "terms": {"thi": [0, 1, 4, 9, 11, 15], "page": 0, "contain": [0, 3, 4, 11, 15], "auto": 0, "gener": [0, 1, 3, 12, 13], "document": [0, 9, 10], "1": [0, 1, 2, 9, 10, 12, 13, 14], "lasdi": 0, "enum": [0, 5, 9, 10], "fd": [0, 5, 8], "gp": [0, 4, 5], "gplasdi": [0, 5, 16, 17], "input": [0, 4, 5, 9, 10], "latent_dynam": [0, 4, 5], "sindi": [0, 3, 4, 7, 14], "latent_spac": [0, 5], "network": [0, 5, 9], "param": [0, 3, 5, 12, 13, 14], "physic": [0, 4, 5, 9, 11, 14, 16, 17], "burgers1d": [0, 13, 16], "postprocess": [0, 5], "time": [0, 5, 7, 8, 9, 10], "workflow": [0, 5], "creat": 0, "sphinx": 0, "autoapi": 0, "nextstep": 1, "base": [1, 2, 8, 9, 10, 12, 13, 17], "enumer": [1, 9, 10], "deriv": [1, 8], "from": [1, 3, 6, 9, 10, 12, 15], "defin": [1, 4], "new": [1, 4], "train": [1, 3, 4, 8, 9, 10, 11], "picksampl": 1, "2": [1, 2, 9, 10, 12, 13], "runsampl": 1, "3": [1, 2, 8, 9, 10, 12, 13], "collectsampl": 1, "4": [1, 2], "result": 1, "unexecut": 1, "success": 1, "fail": 1, "complet": 1, "stencil": 2, "leftbdrdepth": 2, "0": [2, 4, 9, 10, 11, 12, 13, 14], "leftbdrwidth": 2, "leftbdrstencil": 2, "leftbdrnorm": 2, "interiorstencil": 2, "interiorindex": 2, "getoper": 2, "nx": [2, 12], "period": 2, "fals": [2, 6, 7, 8, 13, 16], "convert": [2, 11], "scipy_coo": 2, "sbp12": 2, "5": [2, 14], "sbp24": 2, "6": [2, 14], "sbp36": 2, "7": 2, "8": 2, "9": 2, "sbp48": 2, "10": [2, 14], "11": 2, "12": 2, "fddict": 2, "fit_gp": 3, "x": [3, 9, 10, 11], "y": 3, "each": [3, 8, 9, 10, 11, 15], "given": [3, 7, 8, 9, 10, 13], "interpol": [3, 17], "dataset": [3, 8], "n_train": [3, 7, 11], "n_param": [3, 11], "numpi": [3, 4, 7, 8, 9, 10, 11, 12, 13], "2d": [3, 4, 7, 8, 9, 10, 11, 12, 13], "arrai": [3, 4, 9, 10, 11, 12, 13], "n_coef": 3, "we": 3, "assum": [3, 8, 12, 13], "target": [3, 9, 10], "coeffici": [3, 7], "i": [3, 6, 7, 8, 9, 10, 11, 15, 16, 17], "independ": 3, "other": 3, "gp_dictionnari": [3, 4, 14], "sklearn": 3, "object": [3, 4], "eval_gp": 3, "param_grid": [3, 4, 9, 11], "comput": [3, 4, 7, 8, 9, 10, 12, 14, 17], "predict": [3, 17], "mean": 3, "standard": [3, 4], "deviat": [3, 4], "point": [3, 4, 7, 8, 11], "paramet": [3, 4, 9, 10, 11, 13, 14], "space": [3, 4, 9, 11, 16, 17], "grid": [3, 4, 11], "sample_coef": 3, "n_sampl": [3, 4, 14], "sampl": [3, 4, 7], "set": [3, 7, 9, 10], "od": [3, 8, 17], "one": [3, 6, 7], "coef_sampl": 3, "list": [3, 4, 6, 9, 10, 11, 15], "length": 3, "where": [3, 9, 10, 11], "term": [3, 8], "matrix": 3, "distribut": [3, 9, 10], "average_rom": 4, "autoencod": [4, 9, 14, 16, 17], "gp_dictionari": 4, "sample_rom": 4, "collect": 4, "rom": [4, 17], "trajectori": 4, "gaussian": [4, 17], "process": [4, 17], "regressor": 4, "size": [4, 8, 9, 10, 11, 13, 15], "n_test": [4, 11], "integ": [4, 9, 10], "assert": 4, "len": [4, 9, 10, 11], "shape": [4, 7, 8, 9, 10, 12, 13], "output": [4, 6, 7, 8, 9, 10, 11], "np": [4, 11], "nt": [4, 7, 8, 12, 13], "n_z": [4, 9], "get_fom_max_std": 4, "zi": 4, "maximum": [4, 14], "accross": 4, "find": [4, 6], "correspond": [4, 6, 8, 9, 10, 11], "locat": 4, "optimizer_to": 4, "optim": 4, "devic": 4, "bayesianglasdi": 4, "param_spac": 4, "config": [4, 8, 9, 11, 16], "run": [4, 15], "full": [4, 17], "It": [4, 17], "take": [4, 11], "pytorch": 4, "dictionnari": 4, "all": [4, 8, 9, 10, 15], "The": [4, 8, 9, 10, 11, 15], "method": [4, 15, 17], "activ": [4, 9, 10, 17], "learn": [4, 17], "loop": [4, 8], "reconstruct": 4, "loss": [4, 7], "fom": [4, 16], "data": [4, 9, 10, 12], "x_train": 4, "x_test": [4, 14], "timer": [4, 15], "lr": 4, "n_iter": 4, "max_it": 4, "max_greedy_it": 4, "ld_weight": 4, "coef_weight": 4, "mse": [4, 8], "path_checkpoint": 4, "path_result": 4, "best_loss": 4, "best_coef": 4, "none": [4, 6, 8, 9, 10, 11, 12, 13, 15, 16], "restart_it": 4, "training_loss": 4, "ae_loss": 4, "ld_loss": 4, "coef_loss": 4, "get_new_sample_point": 4, "export": [4, 7, 8, 9, 11, 12, 13, 15], "load": [4, 7, 9, 11, 15], "dict_": [4, 6, 7, 9, 11, 15], "verbos": 6, "inputpars": 6, "dict": [6, 10, 11, 15], "name": [6, 15], "getinput": 6, "kei": [6, 15], "fallback": 6, "datatyp": 6, "valu": [6, 9, 10, 14, 15], "If": [6, 9, 10, 15], "specifi": [6, 9, 10], "do": 6, "exist": 6, "us": [6, 9, 10, 17], "doe": [6, 15], "return": [6, 9, 10, 11, 15], "an": [6, 11], "error": [6, 14], "enforc": 6, "ha": [6, 9, 10], "right": 6, "getdictfromlist": 6, "list_": 6, "inputdict": 6, "get": 6, "val": 6, "note": [6, 9, 15], "onli": [6, 8, 9, 16], "first": [6, 9, 10], "item": 6, "even": 6, "more": 6, "than": 6, "latentdynam": [7, 8], "dim_": 7, "nt_": 7, "dim": [7, 8, 12, 13], "ncoef": [7, 8], "coef": [7, 8], "calibr": [7, 8], "z": [7, 8], "dt": [7, 8, 12, 13], "compute_loss": [7, 8], "true": [7, 8, 9, 10, 13, 14], "latent": [7, 9, 16, 17], "dynam": [7, 17], "seri": 7, "encod": [7, 8, 9], "3d": [7, 9, 10, 12, 13], "tensor": [7, 8, 9, 10], "time_dim": [7, 8], "space_dim": [7, 8, 9, 12, 13], "simul": [7, 8], "z0": [7, 8, 9], "t_grid": [7, 8, 12, 13], "integr": [7, 8], "initi": [7, 8, 9, 10, 11, 16], "condit": [7, 8, 9], "coefs_sampl": 7, "z0_sampl": 7, "fd_type": 8, "fd_oper": 8, "coef_norm_ord": 8, "over": 8, "case": 8, "dimens": [8, 9, 10, 11, 12, 13], "compute_time_deriv": 8, "build": [8, 11], "linear": [8, 9, 10], "ar": [8, 9, 11], "through": [8, 9, 10, 17], "finit": 8, "differ": 8, "timestep": 8, "uniform": [8, 9, 10, 11], "scalar": 8, "dzdt": 8, "same": [8, 9, 10, 15], "system": [8, 17], "u0": [8, 9, 12], "multilayerperceptron": [9, 10], "layer_s": [9, 10], "act_typ": [9, 10], "sigmoid": [9, 10], "reshape_index": [9, 10], "reshape_shap": [9, 10], "threshold": [9, 10], "torch": [9, 10], "nn": [9, 10], "modul": 9, "vanilla": [9, 10], "multi": [9, 10], "layer": [9, 10], "perceptron": [9, 10], "neural": [9, 10], "int": [9, 10, 11, 15], "vector": [9, 10, 11], "str": [9, 10, 15], "option": [9, 10], "type": [9, 10, 11, 15], "By": [9, 10, 17], "default": [9, 10], "see": [9, 10], "act_dict": [9, 10], "avail": [9, 10, 16], "optin": [9, 10], "index": [9, 10], "reshap": [9, 10], "either": [9, 10], "allow": [9, 10], "last": [9, 10], "execut": [9, 10], "which": [9, 10, 11], "behavior": [9, 10], "chang": [9, 10], "For": [9, 10], "detail": [9, 10], "action": [9, 10], "prod": [9, 10], "n_layer": [9, 10], "depth": [9, 10], "includ": [9, 10], "hidden": [9, 10], "fc": [9, 10], "featur": [9, 10], "between": [9, 10], "modulelist": [9, 10], "r_1": [9, 10], "r_2": [9, 10], "ldot": [9, 10], "r_n": [9, 10], "longrightarrow": [9, 10], "prod_": [9, 10], "n": [9, 10], "r_i": [9, 10], "act": [9, 10], "throughout": [9, 10], "forward": [9, 10], "evalu": [9, 10, 17], "pass": [9, 10], "must": [9, 10, 13, 15], "match": [9, 10, 13], "init_weight": [9, 10], "weight": [9, 10, 15, 17], "accord": [9, 10, 16, 17], "xavier": [9, 10], "print_architectur": [9, 10], "print": [9, 10, 15], "out": [9, 10], "architectur": [9, 10], "cnn2d": [9, 10], "mode": [9, 10], "stride": [9, 10], "pad": [9, 10], "dilat": [9, 10], "group": [9, 10], "bia": [9, 10], "padding_mod": [9, 10], "zero": [9, 10], "relu": [9, 10], "data_shap": [9, 10], "two": [9, 10], "dimension": [9, 10], "convolut": [9, 10], "direct": [9, 10], "cnn": [9, 10], "contract": [9, 10], "backward": [9, 10], "expand": [9, 10], "tupl": [9, 10, 11], "appli": [9, 10, 17], "bool": [9, 10], "_layer": [9, 10], "indic": [9, 10, 15], "k": [9, 10, 11], "th": [9, 10], "_size": [9, 10], "channel": [9, 10], "height": [9, 10], "width": [9, 10], "determin": [9, 10], "how": [9, 10], "api": [9, 10, 17], "can": [9, 10, 17], "kernel_s": [9, 10], "kernel": [9, 10], "automat": [9, 10], "so": [9, 10], "next": [9, 10], "conv2d": [9, 10], "batch_reshap": [9, 10], "4d": [9, 10], "arbitrari": [9, 10], "nd": [9, 10, 11, 12, 13], "set_data_shap": [9, 10], "batch": [9, 10], "order": [9, 10, 17], "n_1": [9, 10], "n_m": [9, 10], "c_1": [9, 10], "h_1": [9, 10], "w_1": [9, 10], "_reshap": [9, 10], "m": [9, 10, 17], "n_i": [9, 10], "self": [9, 10], "batch_shap": [9, 10], "print_data_shap": [9, 10], "classmethod": [9, 10], "compute_kernel_s": [9, 10], "input_shap": [9, 10], "output_shap": [9, 10], "produc": [9, 10], "desir": [9, 10], "formula": [9, 10], "convtranspose2d": [9, 10], "compute_input_layer_s": [9, 10], "compute_output_layer_s": [9, 10], "initial_condition_lat": 9, "latentspac": 9, "qgrid_siz": [9, 12, 13], "abstract": 9, "check": 9, "variabl": 9, "restart": 9, "file": [9, 16], "instanc": 9, "attribut": 9, "decod": [9, 17], "conv2dautoencod": 9, "set_batch_shap": 9, "dictionari": [10, 11, 15], "function": 10, "elu": 10, "hardshrink": 10, "hardsigmoid": 10, "hardtanh": 10, "hardswish": 10, "leakyrelu": 10, "logsigmoid": 10, "multihead": 10, "multiheadattent": 10, "prelu": 10, "relu6": 10, "rrelu": 10, "selu": 10, "celu": 10, "gelu": 10, "silu": 10, "mish": 10, "softplu": 10, "softshrink": 10, "tanh": 10, "tanhshrink": 10, "get_1dspace_from_list": 11, "create_uniform_1dspac": 11, "getparam1dspac": 11, "parameterspac": 11, "param_list": 11, "param_nam": [11, 12, 13, 16], "train_spac": 11, "test_spac": 11, "n_init": [11, 14], "test_grid_s": 11, "test_meshgrid": 11, "createinitialtrainspac": 11, "createinitialtrainspaceforhul": 11, "concaten": 11, "provid": 11, "A": [11, 15, 17], "mesh_grid": 11, "d": [11, 17], "number": [11, 15], "exterior": 11, "createtestgridspac": 11, "createtestgridspaceforhul": 11, "test": 11, "when": 11, "hull": 11, "gridsiz": 11, "element": 11, "equal": 11, "createtesthullspac": 11, "ani": 11, "within": 11, "convex": 11, "getparamet": 11, "param_vector": 11, "solv": [11, 12, 13, 17], "initial_condit": [11, 12, 13], "createhypermeshgrid": 11, "param_rang": 11, "1d": [11, 12, 13], "paramspac": 11, "createhypergridspac": 11, "appendtrainspac": 11, "cfg": [12, 13], "a_idx": 12, "w_idx": 12, "qdim": [12, 13], "offlin": [12, 13], "grid_siz": [12, 13], "higher": [12, 13], "xmin": 12, "xmax": 12, "dx": 12, "tmax": 12, "x_grid": [12, 13], "maxk": 12, "convergence_threshold": 12, "residu": [12, 13], "xhist": [12, 13], "residual_burg": 12, "un": 12, "uw": 12, "c": 12, "idxn1": 12, "burger": 12, "equat": 12, "http": 12, "github": 12, "com": 12, "llnl": 12, "glasdi": [12, 17], "jacobian": 12, "u": 12, "solver": 12, "main": [12, 16], "generate_solut": 13, "solut": [13, 17], "requir": 13, "specif": 13, "offlinefom": 13, "compute_error": 14, "x_pred": 14, "rel": 14, "plot_predict": 14, "scale": 14, "plot_gp2d": 14, "p1_mesh": 14, "p2_mesh": 14, "gp_mean": 14, "gp_std": 14, "param_train": 14, "param_label": 14, "p1": 14, "p2": 14, "plot_shap": 14, "figsiz": 14, "15": 14, "13": 14, "refin": 14, "cm": 14, "plt": 14, "jet": 14, "margin": 14, "05": 14, "heatmap2d": 14, "p1_grid": 14, "p2_grid": 14, "titl": 14, "light": [15, 17], "map": [15, 17], "job": 15, "call": 15, "store": 15, "total": 15, "float": 15, "start": 15, "instead": 15, "regist": 15, "arg": 15, "have": 15, "befor": 15, "end": 15, "increas": 15, "runtim": 15, "per": 15, "trainer_dict": 16, "latent_dict": 16, "ld_dict": 16, "physics_dict": 16, "parser": 16, "step": 16, "trainer": 16, "next_step": 16, "use_restart": 16, "initialize_train": 16, "restart_fil": 16, "class": 16, "model": [16, 17], "current": 16, "initialize_latent_spac": 16, "ae": 16, "initialize_phys": 16, "pick_sampl": 16, "run_sampl": 16, "collect_sampl": 16, "python": 17, "packag": 17, "identif": 17, "pde": 17, "govern": 17, "reduc": 17, "fast": 17, "accur": 17, "made": 17, "feed": 17, "also": 17, "support": 17, "parametr": 17, "uncertainti": 17, "via": 17, "bonnevil": 17, "christoph": 17, "xiaolong": 17, "he": 17, "april": 17, "tran": 17, "jun": 17, "sur": 17, "park": 17, "william": 17, "fri": 17, "daniel": 17, "messeng": 17, "siu": 17, "wun": 17, "cheung": 17, "et": 17, "al": 17, "comprehens": 17, "review": 17, "algorithm": 17, "intrus": 17, "non": 17, "arxiv": 17, "preprint": 17, "2403": 17, "10748": 17, "2024": 17, "youngsoo": 17, "choi": 17, "mechan": 17, "engin": 17, "399": 17, "2022": 17, "115436": 17, "jonathan": 17, "l": 17, "belof": 17, "jiun": 17, "shyan": 17, "chen": 17, "inform": 17, "greedi": 17, "journal": 17, "489": 17, "2023": 17, "112267": 17, "david": 17, "bortz": 17, "weak": 17, "form": 17, "427": 17, "116998": 17, "richard": 17, "yeonjong": 17, "shin": 17, "tlasdi": 17, "thermodynam": 17, "05848": 17, "debojyoti": 17, "ghosh": 17, "interpret": 17, "deep": 17, "418": 17, "116535": 17, "simultan": 17, "2407": 17, "00337": 17}, "objects": {"": [[5, 0, 0, "-", "lasdi"]], "lasdi": [[1, 0, 0, "-", "enums"], [2, 0, 0, "-", "fd"], [3, 0, 0, "-", "gp"], [4, 0, 0, "-", "gplasdi"], [6, 0, 0, "-", "inputs"], [7, 0, 0, "-", "latent_dynamics"], [9, 0, 0, "-", "latent_space"], [10, 0, 0, "-", "networks"], [11, 0, 0, "-", "param"], [13, 0, 0, "-", "physics"], [14, 0, 0, "-", "postprocess"], [15, 0, 0, "-", "timing"], [16, 0, 0, "-", "workflow"]], "lasdi.enums": [[1, 1, 1, "", "NextStep"], [1, 1, 1, "", "Result"]], "lasdi.enums.NextStep": [[1, 2, 1, "", "CollectSample"], [1, 2, 1, "", "PickSample"], [1, 2, 1, "", "RunSample"], [1, 2, 1, "", "Train"]], "lasdi.enums.Result": [[1, 2, 1, "", "Complete"], [1, 2, 1, "", "Fail"], [1, 2, 1, "", "Success"], [1, 2, 1, "", "Unexecuted"]], "lasdi.fd": [[2, 3, 1, "", "FDdict"], [2, 1, 1, "", "SBP12"], [2, 1, 1, "", "SBP24"], [2, 1, 1, "", "SBP36"], [2, 1, 1, "", "SBP48"], [2, 1, 1, "", "Stencil"]], "lasdi.fd.SBP12": [[2, 2, 1, "", "interiorIndexes"], [2, 2, 1, "", "interiorStencils"], [2, 2, 1, "", "leftBdrDepth"], [2, 2, 1, "", "leftBdrNorm"], [2, 2, 1, "", "leftBdrStencils"], [2, 2, 1, "", "leftBdrWidth"]], "lasdi.fd.SBP24": [[2, 2, 1, "", "interiorIndexes"], [2, 2, 1, "", "interiorStencils"], [2, 2, 1, "", "leftBdrDepth"], [2, 2, 1, "", "leftBdrNorm"], [2, 2, 1, "", "leftBdrStencils"], [2, 2, 1, "", "leftBdrWidth"]], "lasdi.fd.SBP36": [[2, 2, 1, "", "interiorIndexes"], [2, 2, 1, "", "interiorStencils"], [2, 2, 1, "", "leftBdrDepth"], [2, 2, 1, "", "leftBdrNorm"], [2, 2, 1, "", "leftBdrStencils"], [2, 2, 1, "", "leftBdrWidth"]], "lasdi.fd.SBP48": [[2, 2, 1, "", "interiorIndexes"], [2, 2, 1, "", "interiorStencils"], [2, 2, 1, "", "leftBdrDepth"], [2, 2, 1, "", "leftBdrNorm"], [2, 2, 1, "", "leftBdrStencils"], [2, 2, 1, "", "leftBdrWidth"]], "lasdi.fd.Stencil": [[2, 4, 1, "", "convert"], [2, 4, 1, "", "getOperators"], [2, 2, 1, "", "interiorIndexes"], [2, 2, 1, "", "interiorStencils"], [2, 2, 1, "", "leftBdrDepth"], [2, 2, 1, "", "leftBdrNorm"], [2, 2, 1, "", "leftBdrStencils"], [2, 2, 1, "", "leftBdrWidth"]], "lasdi.gp": [[3, 5, 1, "", "eval_gp"], [3, 5, 1, "", "fit_gps"], [3, 5, 1, "", "sample_coefs"]], "lasdi.gplasdi": [[4, 1, 1, "", "BayesianGLaSDI"], [4, 5, 1, "", "average_rom"], [4, 5, 1, "", "get_fom_max_std"], [4, 5, 1, "", "optimizer_to"], [4, 5, 1, "", "sample_roms"]], "lasdi.gplasdi.BayesianGLaSDI": [[4, 2, 1, "", "MSE"], [4, 2, 1, "", "X_test"], [4, 2, 1, "", "X_train"], [4, 2, 1, "", "ae_loss"], [4, 2, 1, "", "autoencoder"], [4, 2, 1, "", "best_coefs"], [4, 2, 1, "", "best_loss"], [4, 2, 1, "", "coef_loss"], [4, 2, 1, "", "coef_weight"], [4, 4, 1, "", "export"], [4, 4, 1, "", "get_new_sample_point"], [4, 2, 1, "", "latent_dynamics"], [4, 2, 1, "", "ld_loss"], [4, 2, 1, "", "ld_weight"], [4, 4, 1, "", "load"], [4, 2, 1, "", "lr"], [4, 2, 1, "", "max_greedy_iter"], [4, 2, 1, "", "max_iter"], [4, 2, 1, "", "n_iter"], [4, 2, 1, "", "n_samples"], [4, 2, 1, "", "optimizer"], [4, 2, 1, "", "param_space"], [4, 2, 1, "", "path_checkpoint"], [4, 2, 1, "", "path_results"], [4, 2, 1, "", "physics"], [4, 2, 1, "", "restart_iter"], [4, 2, 1, "", "timer"], [4, 4, 1, "", "train"], [4, 2, 1, "", "training_loss"]], "lasdi.inputs": [[6, 1, 1, "", "InputParser"], [6, 5, 1, "", "getDictFromList"], [6, 3, 1, "", "verbose"]], "lasdi.inputs.InputParser": [[6, 2, 1, "", "dict_"], [6, 4, 1, "", "getInput"], [6, 2, 1, "", "name"]], "lasdi.latent_dynamics": [[7, 1, 1, "", "LatentDynamics"], [8, 0, 0, "-", "sindy"]], "lasdi.latent_dynamics.LatentDynamics": [[7, 4, 1, "", "calibrate"], [7, 2, 1, "", "coefs"], [7, 2, 1, "", "dim"], [7, 4, 1, "", "export"], [7, 4, 1, "", "load"], [7, 2, 1, "", "ncoefs"], [7, 2, 1, "", "nt"], [7, 4, 1, "", "sample"], [7, 4, 1, "", "simulate"]], "lasdi.latent_dynamics.sindy": [[8, 1, 1, "", "SINDy"]], "lasdi.latent_dynamics.sindy.SINDy": [[8, 2, 1, "", "MSE"], [8, 4, 1, "", "calibrate"], [8, 2, 1, "", "coef_norm_order"], [8, 4, 1, "", "compute_time_derivative"], [8, 4, 1, "", "export"], [8, 2, 1, "", "fd"], [8, 2, 1, "", "fd_oper"], [8, 2, 1, "", "fd_type"], [8, 2, 1, "", "ncoefs"], [8, 4, 1, "", "simulate"]], "lasdi.latent_space": [[9, 1, 1, "", "Autoencoder"], [9, 1, 1, "", "CNN2D"], [9, 1, 1, "", "Conv2DAutoencoder"], [9, 1, 1, "", "LatentSpace"], [9, 1, 1, "", "MultiLayerPerceptron"], [9, 5, 1, "", "initial_condition_latent"]], "lasdi.latent_space.Autoencoder": [[9, 2, 1, "", "decoder"], [9, 2, 1, "", "encoder"], [9, 4, 1, "", "export"], [9, 4, 1, "", "forward"], [9, 4, 1, "", "load"], [9, 2, 1, "", "space_dim"]], "lasdi.latent_space.CNN2D": [[9, 1, 1, "", "Mode"], [9, 2, 1, "", "act"], [9, 2, 1, "", "batch_reshape"], [9, 2, 1, "", "bias"], [9, 2, 1, "", "channels"], [9, 4, 1, "", "compute_input_layer_size"], [9, 4, 1, "", "compute_kernel_size"], [9, 4, 1, "", "compute_output_layer_size"], [9, 2, 1, "", "data_shape"], [9, 2, 1, "", "dilations"], [9, 2, 1, "", "fcs"], [9, 4, 1, "", "forward"], [9, 2, 1, "", "groups"], [9, 4, 1, "", "init_weight"], [9, 2, 1, "", "kernel_sizes"], [9, 2, 1, "", "layer_sizes"], [9, 2, 1, "", "n_layers"], [9, 2, 1, "", "padding_mode"], [9, 2, 1, "", "paddings"], [9, 4, 1, "", "print_data_shape"], [9, 4, 1, "", "set_data_shape"], [9, 2, 1, "", "strides"]], "lasdi.latent_space.CNN2D.Mode": [[9, 2, 1, "", "Backward"], [9, 2, 1, "", "Forward"]], "lasdi.latent_space.Conv2DAutoencoder": [[9, 2, 1, "", "decoder"], [9, 2, 1, "", "encoder"], [9, 4, 1, "", "export"], [9, 4, 1, "", "forward"], [9, 4, 1, "", "load"], [9, 4, 1, "", "print_architecture"], [9, 4, 1, "", "set_batch_shape"]], "lasdi.latent_space.LatentSpace": [[9, 4, 1, "", "export"], [9, 4, 1, "", "forward"], [9, 4, 1, "", "load"], [9, 2, 1, "", "n_z"], [9, 2, 1, "", "qgrid_size"]], "lasdi.latent_space.MultiLayerPerceptron": [[9, 2, 1, "", "act"], [9, 2, 1, "", "act_type"], [9, 2, 1, "", "fcs"], [9, 4, 1, "", "forward"], [9, 4, 1, "", "init_weight"], [9, 2, 1, "", "layer_sizes"], [9, 2, 1, "", "n_layers"], [9, 4, 1, "", "print_architecture"], [9, 2, 1, "", "reshape_index"], [9, 2, 1, "", "reshape_shape"]], "lasdi.networks": [[10, 1, 1, "", "CNN2D"], [10, 1, 1, "", "MultiLayerPerceptron"], [10, 3, 1, "", "act_dict"]], "lasdi.networks.CNN2D": [[10, 1, 1, "", "Mode"], [10, 2, 1, "", "act"], [10, 2, 1, "", "batch_reshape"], [10, 2, 1, "", "bias"], [10, 2, 1, "", "channels"], [10, 4, 1, "", "compute_input_layer_size"], [10, 4, 1, "", "compute_kernel_size"], [10, 4, 1, "", "compute_output_layer_size"], [10, 2, 1, "", "data_shape"], [10, 2, 1, "", "dilations"], [10, 2, 1, "", "fcs"], [10, 4, 1, "", "forward"], [10, 2, 1, "", "groups"], [10, 4, 1, "", "init_weight"], [10, 2, 1, "", "kernel_sizes"], [10, 2, 1, "", "layer_sizes"], [10, 2, 1, "", "n_layers"], [10, 2, 1, "", "padding_mode"], [10, 2, 1, "", "paddings"], [10, 4, 1, "", "print_data_shape"], [10, 4, 1, "", "set_data_shape"], [10, 2, 1, "", "strides"]], "lasdi.networks.CNN2D.Mode": [[10, 2, 1, "", "Backward"], [10, 2, 1, "", "Forward"]], "lasdi.networks.MultiLayerPerceptron": [[10, 2, 1, "", "act"], [10, 2, 1, "", "act_type"], [10, 2, 1, "", "fcs"], [10, 4, 1, "", "forward"], [10, 4, 1, "", "init_weight"], [10, 2, 1, "", "layer_sizes"], [10, 2, 1, "", "n_layers"], [10, 4, 1, "", "print_architecture"], [10, 2, 1, "", "reshape_index"], [10, 2, 1, "", "reshape_shape"]], "lasdi.param": [[11, 1, 1, "", "ParameterSpace"], [11, 5, 1, "", "create_uniform_1dspace"], [11, 3, 1, "", "getParam1DSpace"], [11, 5, 1, "", "get_1dspace_from_list"]], "lasdi.param.ParameterSpace": [[11, 4, 1, "", "appendTrainSpace"], [11, 4, 1, "", "createHyperGridSpace"], [11, 4, 1, "", "createHyperMeshGrid"], [11, 4, 1, "", "createInitialTrainSpace"], [11, 4, 1, "", "createInitialTrainSpaceForHull"], [11, 4, 1, "", "createTestGridSpace"], [11, 4, 1, "", "createTestGridSpaceForHull"], [11, 4, 1, "", "createTestHullSpace"], [11, 4, 1, "", "export"], [11, 4, 1, "", "getParameter"], [11, 4, 1, "", "load"], [11, 2, 1, "", "n_init"], [11, 2, 1, "", "n_param"], [11, 4, 1, "", "n_test"], [11, 4, 1, "", "n_train"], [11, 2, 1, "", "param_list"], [11, 2, 1, "", "param_name"], [11, 2, 1, "", "test_grid_sizes"], [11, 2, 1, "", "test_meshgrid"], [11, 2, 1, "", "test_space"], [11, 2, 1, "", "train_space"]], "lasdi.physics": [[13, 1, 1, "", "OfflineFOM"], [13, 1, 1, "", "Physics"], [12, 0, 0, "-", "burgers1d"]], "lasdi.physics.OfflineFOM": [[13, 2, 1, "", "dim"], [13, 2, 1, "", "dt"], [13, 4, 1, "", "export"], [13, 4, 1, "", "generate_solutions"], [13, 2, 1, "", "grid_size"], [13, 2, 1, "", "nt"], [13, 2, 1, "", "offline"], [13, 2, 1, "", "qdim"], [13, 2, 1, "", "qgrid_size"], [13, 2, 1, "", "t_grid"], [13, 2, 1, "", "x_grid"]], "lasdi.physics.Physics": [[13, 2, 1, "", "dim"], [13, 2, 1, "", "dt"], [13, 4, 1, "", "export"], [13, 4, 1, "", "generate_solutions"], [13, 2, 1, "", "grid_size"], [13, 4, 1, "", "initial_condition"], [13, 2, 1, "", "nt"], [13, 2, 1, "", "offline"], [13, 2, 1, "", "param_name"], [13, 2, 1, "", "qdim"], [13, 2, 1, "", "qgrid_size"], [13, 4, 1, "", "residual"], [13, 4, 1, "", "solve"], [13, 2, 1, "", "t_grid"], [13, 2, 1, "", "x_grid"]], "lasdi.physics.burgers1d": [[12, 1, 1, "", "Burgers1D"], [12, 5, 1, "", "jacobian"], [12, 5, 1, "", "main"], [12, 5, 1, "", "residual_burgers"], [12, 5, 1, "", "solver"]], "lasdi.physics.burgers1d.Burgers1D": [[12, 2, 1, "", "a_idx"], [12, 2, 1, "", "convergence_threshold"], [12, 2, 1, "", "dim"], [12, 2, 1, "", "dt"], [12, 2, 1, "", "dx"], [12, 4, 1, "", "export"], [12, 2, 1, "", "grid_size"], [12, 4, 1, "", "initial_condition"], [12, 2, 1, "", "maxk"], [12, 2, 1, "", "nt"], [12, 2, 1, "", "offline"], [12, 2, 1, "", "qdim"], [12, 2, 1, "", "qgrid_size"], [12, 4, 1, "", "residual"], [12, 4, 1, "", "solve"], [12, 2, 1, "", "t_grid"], [12, 2, 1, "", "tmax"], [12, 2, 1, "", "w_idx"], [12, 2, 1, "", "x_grid"], [12, 2, 1, "", "xmax"], [12, 2, 1, "", "xmin"]], "lasdi.postprocess": [[14, 5, 1, "", "compute_errors"], [14, 5, 1, "", "heatmap2d"], [14, 5, 1, "", "plot_gp2d"], [14, 5, 1, "", "plot_prediction"]], "lasdi.timing": [[15, 1, 1, "", "Timer"]], "lasdi.timing.Timer": [[15, 2, 1, "", "calls"], [15, 4, 1, "", "end"], [15, 4, 1, "", "export"], [15, 4, 1, "", "load"], [15, 2, 1, "", "names"], [15, 4, 1, "", "print"], [15, 4, 1, "", "start"], [15, 2, 1, "", "starts"], [15, 2, 1, "", "times"]], "lasdi.workflow": [[16, 5, 1, "", "collect_samples"], [16, 5, 1, "", "initialize_latent_space"], [16, 5, 1, "", "initialize_physics"], [16, 5, 1, "", "initialize_trainer"], [16, 3, 1, "", "latent_dict"], [16, 3, 1, "", "ld_dict"], [16, 5, 1, "", "main"], [16, 3, 1, "", "parser"], [16, 3, 1, "", "physics_dict"], [16, 5, 1, "", "pick_samples"], [16, 5, 1, "", "run_samples"], [16, 5, 1, "", "step"], [16, 3, 1, "", "trainer_dict"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:data", "4": "py:method", "5": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "data", "Python data"], "4": ["py", "method", "Python method"], "5": ["py", "function", "Python function"]}, "titleterms": {"api": 0, "refer": [0, 17], "lasdi": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], "enum": 1, "class": [1, 2, 4, 6, 7, 8, 9, 10, 11, 12, 13, 15], "modul": [1, 2, 3, 4, 6, 8, 10, 11, 12, 14, 15, 16], "content": [1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], "fd": 2, "attribut": [2, 6, 10, 11, 16], "gp": 3, "function": [3, 4, 6, 9, 11, 12, 14, 16], "gplasdi": 4, "submodul": [5, 7, 13], "input": 6, "latent_dynam": [7, 8], "packag": [7, 9, 13], "sindi": 8, "latent_spac": 9, "network": 10, "param": 11, "physic": [12, 13], "burgers1d": 12, "postprocess": 14, "time": 15, "workflow": 16, "document": 17}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 58}, "alltitles": {"API Reference": [[0, "api-reference"]], "lasdi.enums": [[1, "module-lasdi.enums"]], "Classes": [[1, "classes"], [2, "classes"], [4, "classes"], [6, "classes"], [7, "classes"], [8, "classes"], [9, "classes"], [10, "classes"], [11, "classes"], [12, "classes"], [13, "classes"], [15, "classes"]], "Module Contents": [[1, "module-contents"], [2, "module-contents"], [3, "module-contents"], [4, "module-contents"], [6, "module-contents"], [8, "module-contents"], [10, "module-contents"], [11, "module-contents"], [12, "module-contents"], [14, "module-contents"], [15, "module-contents"], [16, "module-contents"]], "lasdi.fd": [[2, "module-lasdi.fd"]], "Attributes": [[2, "attributes"], [6, "attributes"], [10, "attributes"], [11, "attributes"], [16, "attributes"]], "lasdi.gp": [[3, "module-lasdi.gp"]], "Functions": [[3, "functions"], [4, "functions"], [6, "functions"], [9, "functions"], [11, "functions"], [12, "functions"], [14, "functions"], [16, "functions"]], "lasdi.gplasdi": [[4, "module-lasdi.gplasdi"]], "lasdi": [[5, "module-lasdi"]], "Submodules": [[5, "submodules"], [7, "submodules"], [13, "submodules"]], "lasdi.inputs": [[6, "module-lasdi.inputs"]], "lasdi.latent_dynamics": [[7, "module-lasdi.latent_dynamics"]], "Package Contents": [[7, "package-contents"], [9, "package-contents"], [13, "package-contents"]], "lasdi.latent_dynamics.sindy": [[8, "module-lasdi.latent_dynamics.sindy"]], "lasdi.latent_space": [[9, "module-lasdi.latent_space"]], "lasdi.networks": [[10, "module-lasdi.networks"]], "lasdi.param": [[11, "module-lasdi.param"]], "lasdi.physics.burgers1d": [[12, "module-lasdi.physics.burgers1d"]], "lasdi.physics": [[13, "module-lasdi.physics"]], "lasdi.postprocess": [[14, "module-lasdi.postprocess"]], "lasdi.timing": [[15, "module-lasdi.timing"]], "lasdi.workflow": [[16, "module-lasdi.workflow"]], "LaSDI documentation": [[17, "lasdi-documentation"]], "Contents:": [[17, null]], "References": [[17, "references"]]}, "indexentries": {"collectsample (lasdi.enums.nextstep attribute)": [[1, "lasdi.enums.NextStep.CollectSample"]], "complete (lasdi.enums.result attribute)": [[1, "lasdi.enums.Result.Complete"]], "fail (lasdi.enums.result attribute)": [[1, "lasdi.enums.Result.Fail"]], "nextstep (class in lasdi.enums)": [[1, "lasdi.enums.NextStep"]], "picksample (lasdi.enums.nextstep attribute)": [[1, "lasdi.enums.NextStep.PickSample"]], "result (class in lasdi.enums)": [[1, "lasdi.enums.Result"]], "runsample (lasdi.enums.nextstep attribute)": [[1, "lasdi.enums.NextStep.RunSample"]], "success (lasdi.enums.result attribute)": [[1, "lasdi.enums.Result.Success"]], "train (lasdi.enums.nextstep attribute)": [[1, "lasdi.enums.NextStep.Train"]], "unexecuted (lasdi.enums.result attribute)": [[1, "lasdi.enums.Result.Unexecuted"]], "lasdi.enums": [[1, "module-lasdi.enums"]], "module": [[1, "module-lasdi.enums"], [2, "module-lasdi.fd"], [3, "module-lasdi.gp"], [4, "module-lasdi.gplasdi"], [5, "module-lasdi"], [6, "module-lasdi.inputs"], [7, "module-lasdi.latent_dynamics"], [8, "module-lasdi.latent_dynamics.sindy"], [9, "module-lasdi.latent_space"], [10, "module-lasdi.networks"], [11, "module-lasdi.param"], [12, "module-lasdi.physics.burgers1d"], [13, "module-lasdi.physics"], [14, "module-lasdi.postprocess"], [15, "module-lasdi.timing"], [16, "module-lasdi.workflow"]], "fddict (in module lasdi.fd)": [[2, "lasdi.fd.FDdict"]], "sbp12 (class in lasdi.fd)": [[2, "lasdi.fd.SBP12"]], "sbp24 (class in lasdi.fd)": [[2, "lasdi.fd.SBP24"]], "sbp36 (class in lasdi.fd)": [[2, "lasdi.fd.SBP36"]], "sbp48 (class in lasdi.fd)": [[2, "lasdi.fd.SBP48"]], "stencil (class in lasdi.fd)": [[2, "lasdi.fd.Stencil"]], "convert() (lasdi.fd.stencil method)": [[2, "lasdi.fd.Stencil.convert"]], "getoperators() (lasdi.fd.stencil method)": [[2, "lasdi.fd.Stencil.getOperators"]], "interiorindexes (lasdi.fd.sbp12 attribute)": [[2, "lasdi.fd.SBP12.interiorIndexes"]], "interiorindexes (lasdi.fd.sbp24 attribute)": [[2, "lasdi.fd.SBP24.interiorIndexes"]], "interiorindexes (lasdi.fd.sbp36 attribute)": [[2, "lasdi.fd.SBP36.interiorIndexes"]], "interiorindexes (lasdi.fd.sbp48 attribute)": [[2, "lasdi.fd.SBP48.interiorIndexes"]], "interiorindexes (lasdi.fd.stencil attribute)": [[2, "lasdi.fd.Stencil.interiorIndexes"]], "interiorstencils (lasdi.fd.sbp12 attribute)": [[2, "lasdi.fd.SBP12.interiorStencils"]], "interiorstencils (lasdi.fd.sbp24 attribute)": [[2, "lasdi.fd.SBP24.interiorStencils"]], "interiorstencils (lasdi.fd.sbp36 attribute)": [[2, "lasdi.fd.SBP36.interiorStencils"]], "interiorstencils (lasdi.fd.sbp48 attribute)": [[2, "lasdi.fd.SBP48.interiorStencils"]], "interiorstencils (lasdi.fd.stencil attribute)": [[2, "lasdi.fd.Stencil.interiorStencils"]], "lasdi.fd": [[2, "module-lasdi.fd"]], "leftbdrdepth (lasdi.fd.sbp12 attribute)": [[2, "lasdi.fd.SBP12.leftBdrDepth"]], "leftbdrdepth (lasdi.fd.sbp24 attribute)": [[2, "lasdi.fd.SBP24.leftBdrDepth"]], "leftbdrdepth (lasdi.fd.sbp36 attribute)": [[2, "lasdi.fd.SBP36.leftBdrDepth"]], "leftbdrdepth (lasdi.fd.sbp48 attribute)": [[2, "lasdi.fd.SBP48.leftBdrDepth"]], "leftbdrdepth (lasdi.fd.stencil attribute)": [[2, "lasdi.fd.Stencil.leftBdrDepth"]], "leftbdrnorm (lasdi.fd.sbp12 attribute)": [[2, "lasdi.fd.SBP12.leftBdrNorm"]], "leftbdrnorm (lasdi.fd.sbp24 attribute)": [[2, "lasdi.fd.SBP24.leftBdrNorm"]], "leftbdrnorm (lasdi.fd.sbp36 attribute)": [[2, "lasdi.fd.SBP36.leftBdrNorm"]], "leftbdrnorm (lasdi.fd.sbp48 attribute)": [[2, "lasdi.fd.SBP48.leftBdrNorm"]], "leftbdrnorm (lasdi.fd.stencil attribute)": [[2, "lasdi.fd.Stencil.leftBdrNorm"]], "leftbdrstencils (lasdi.fd.sbp12 attribute)": [[2, "lasdi.fd.SBP12.leftBdrStencils"]], "leftbdrstencils (lasdi.fd.sbp24 attribute)": [[2, "lasdi.fd.SBP24.leftBdrStencils"]], "leftbdrstencils (lasdi.fd.sbp36 attribute)": [[2, "lasdi.fd.SBP36.leftBdrStencils"]], "leftbdrstencils (lasdi.fd.sbp48 attribute)": [[2, "lasdi.fd.SBP48.leftBdrStencils"]], "leftbdrstencils (lasdi.fd.stencil attribute)": [[2, "lasdi.fd.Stencil.leftBdrStencils"]], "leftbdrwidth (lasdi.fd.sbp12 attribute)": [[2, "lasdi.fd.SBP12.leftBdrWidth"]], "leftbdrwidth (lasdi.fd.sbp24 attribute)": [[2, "lasdi.fd.SBP24.leftBdrWidth"]], "leftbdrwidth (lasdi.fd.sbp36 attribute)": [[2, "lasdi.fd.SBP36.leftBdrWidth"]], "leftbdrwidth (lasdi.fd.sbp48 attribute)": [[2, "lasdi.fd.SBP48.leftBdrWidth"]], "leftbdrwidth (lasdi.fd.stencil attribute)": [[2, "lasdi.fd.Stencil.leftBdrWidth"]], "eval_gp() (in module lasdi.gp)": [[3, "lasdi.gp.eval_gp"]], "fit_gps() (in module lasdi.gp)": [[3, "lasdi.gp.fit_gps"]], "lasdi.gp": [[3, "module-lasdi.gp"]], "sample_coefs() (in module lasdi.gp)": [[3, "lasdi.gp.sample_coefs"]], "bayesianglasdi (class in lasdi.gplasdi)": [[4, "lasdi.gplasdi.BayesianGLaSDI"]], "mse (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.MSE"]], "x_test (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.X_test"]], "x_train (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.X_train"]], "ae_loss (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.ae_loss"]], "autoencoder (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.autoencoder"]], "average_rom() (in module lasdi.gplasdi)": [[4, "lasdi.gplasdi.average_rom"]], "best_coefs (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.best_coefs"]], "best_loss (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.best_loss"]], "coef_loss (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.coef_loss"]], "coef_weight (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.coef_weight"]], "export() (lasdi.gplasdi.bayesianglasdi method)": [[4, "lasdi.gplasdi.BayesianGLaSDI.export"]], "get_fom_max_std() (in module lasdi.gplasdi)": [[4, "lasdi.gplasdi.get_fom_max_std"]], "get_new_sample_point() (lasdi.gplasdi.bayesianglasdi method)": [[4, "lasdi.gplasdi.BayesianGLaSDI.get_new_sample_point"]], "lasdi.gplasdi": [[4, "module-lasdi.gplasdi"]], "latent_dynamics (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.latent_dynamics"]], "ld_loss (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.ld_loss"]], "ld_weight (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.ld_weight"]], "load() (lasdi.gplasdi.bayesianglasdi method)": [[4, "lasdi.gplasdi.BayesianGLaSDI.load"]], "lr (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.lr"]], "max_greedy_iter (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.max_greedy_iter"]], "max_iter (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.max_iter"]], "n_iter (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.n_iter"]], "n_samples (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.n_samples"]], "optimizer (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.optimizer"]], "optimizer_to() (in module lasdi.gplasdi)": [[4, "lasdi.gplasdi.optimizer_to"]], "param_space (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.param_space"]], "path_checkpoint (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.path_checkpoint"]], "path_results (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.path_results"]], "physics (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.physics"]], "restart_iter (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.restart_iter"]], "sample_roms() (in module lasdi.gplasdi)": [[4, "lasdi.gplasdi.sample_roms"]], "timer (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.timer"]], "train() (lasdi.gplasdi.bayesianglasdi method)": [[4, "lasdi.gplasdi.BayesianGLaSDI.train"]], "training_loss (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.training_loss"]], "lasdi": [[5, "module-lasdi"]], "inputparser (class in lasdi.inputs)": [[6, "lasdi.inputs.InputParser"]], "dict_ (lasdi.inputs.inputparser attribute)": [[6, "lasdi.inputs.InputParser.dict_"]], "getdictfromlist() (in module lasdi.inputs)": [[6, "lasdi.inputs.getDictFromList"]], "getinput() (lasdi.inputs.inputparser method)": [[6, "lasdi.inputs.InputParser.getInput"]], "lasdi.inputs": [[6, "module-lasdi.inputs"]], "name (lasdi.inputs.inputparser attribute)": [[6, "lasdi.inputs.InputParser.name"]], "verbose (in module lasdi.inputs)": [[6, "lasdi.inputs.verbose"]], "latentdynamics (class in lasdi.latent_dynamics)": [[7, "lasdi.latent_dynamics.LatentDynamics"]], "calibrate() (lasdi.latent_dynamics.latentdynamics method)": [[7, "lasdi.latent_dynamics.LatentDynamics.calibrate"]], "coefs (lasdi.latent_dynamics.latentdynamics attribute)": [[7, "lasdi.latent_dynamics.LatentDynamics.coefs"]], "dim (lasdi.latent_dynamics.latentdynamics attribute)": [[7, "lasdi.latent_dynamics.LatentDynamics.dim"]], "export() (lasdi.latent_dynamics.latentdynamics method)": [[7, "lasdi.latent_dynamics.LatentDynamics.export"]], "lasdi.latent_dynamics": [[7, "module-lasdi.latent_dynamics"]], "load() (lasdi.latent_dynamics.latentdynamics method)": [[7, "lasdi.latent_dynamics.LatentDynamics.load"]], "ncoefs (lasdi.latent_dynamics.latentdynamics attribute)": [[7, "lasdi.latent_dynamics.LatentDynamics.ncoefs"]], "nt (lasdi.latent_dynamics.latentdynamics attribute)": [[7, "lasdi.latent_dynamics.LatentDynamics.nt"]], "sample() (lasdi.latent_dynamics.latentdynamics method)": [[7, "lasdi.latent_dynamics.LatentDynamics.sample"]], "simulate() (lasdi.latent_dynamics.latentdynamics method)": [[7, "lasdi.latent_dynamics.LatentDynamics.simulate"]], "mse (lasdi.latent_dynamics.sindy.sindy attribute)": [[8, "lasdi.latent_dynamics.sindy.SINDy.MSE"]], "sindy (class in lasdi.latent_dynamics.sindy)": [[8, "lasdi.latent_dynamics.sindy.SINDy"]], "calibrate() (lasdi.latent_dynamics.sindy.sindy method)": [[8, "lasdi.latent_dynamics.sindy.SINDy.calibrate"]], "coef_norm_order (lasdi.latent_dynamics.sindy.sindy attribute)": [[8, "lasdi.latent_dynamics.sindy.SINDy.coef_norm_order"]], "compute_time_derivative() (lasdi.latent_dynamics.sindy.sindy method)": [[8, "lasdi.latent_dynamics.sindy.SINDy.compute_time_derivative"]], "export() (lasdi.latent_dynamics.sindy.sindy method)": [[8, "lasdi.latent_dynamics.sindy.SINDy.export"]], "fd (lasdi.latent_dynamics.sindy.sindy attribute)": [[8, "lasdi.latent_dynamics.sindy.SINDy.fd"]], "fd_oper (lasdi.latent_dynamics.sindy.sindy attribute)": [[8, "lasdi.latent_dynamics.sindy.SINDy.fd_oper"]], "fd_type (lasdi.latent_dynamics.sindy.sindy attribute)": [[8, "lasdi.latent_dynamics.sindy.SINDy.fd_type"]], "lasdi.latent_dynamics.sindy": [[8, "module-lasdi.latent_dynamics.sindy"]], "ncoefs (lasdi.latent_dynamics.sindy.sindy attribute)": [[8, "lasdi.latent_dynamics.sindy.SINDy.ncoefs"]], "simulate() (lasdi.latent_dynamics.sindy.sindy method)": [[8, "lasdi.latent_dynamics.sindy.SINDy.simulate"]], "autoencoder (class in lasdi.latent_space)": [[9, "lasdi.latent_space.Autoencoder"]], "backward (lasdi.latent_space.cnn2d.mode attribute)": [[9, "lasdi.latent_space.CNN2D.Mode.Backward"]], "cnn2d (class in lasdi.latent_space)": [[9, "lasdi.latent_space.CNN2D"]], "cnn2d.mode (class in lasdi.latent_space)": [[9, "lasdi.latent_space.CNN2D.Mode"]], "conv2dautoencoder (class in lasdi.latent_space)": [[9, "lasdi.latent_space.Conv2DAutoencoder"]], "forward (lasdi.latent_space.cnn2d.mode attribute)": [[9, "lasdi.latent_space.CNN2D.Mode.Forward"]], "latentspace (class in lasdi.latent_space)": [[9, "lasdi.latent_space.LatentSpace"]], "multilayerperceptron (class in lasdi.latent_space)": [[9, "lasdi.latent_space.MultiLayerPerceptron"]], "act (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.act"]], "act (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.act"]], "act_type (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.act_type"]], "batch_reshape (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.batch_reshape"]], "bias (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.bias"]], "channels (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.channels"]], "compute_input_layer_size() (lasdi.latent_space.cnn2d class method)": [[9, "lasdi.latent_space.CNN2D.compute_input_layer_size"]], "compute_kernel_size() (lasdi.latent_space.cnn2d class method)": [[9, "lasdi.latent_space.CNN2D.compute_kernel_size"]], "compute_output_layer_size() (lasdi.latent_space.cnn2d class method)": [[9, "lasdi.latent_space.CNN2D.compute_output_layer_size"]], "data_shape (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.data_shape"]], "decoder (lasdi.latent_space.autoencoder attribute)": [[9, "lasdi.latent_space.Autoencoder.decoder"]], "decoder (lasdi.latent_space.conv2dautoencoder attribute)": [[9, "lasdi.latent_space.Conv2DAutoencoder.decoder"]], "dilations (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.dilations"]], "encoder (lasdi.latent_space.autoencoder attribute)": [[9, "lasdi.latent_space.Autoencoder.encoder"]], "encoder (lasdi.latent_space.conv2dautoencoder attribute)": [[9, "lasdi.latent_space.Conv2DAutoencoder.encoder"]], "export() (lasdi.latent_space.autoencoder method)": [[9, "lasdi.latent_space.Autoencoder.export"]], "export() (lasdi.latent_space.conv2dautoencoder method)": [[9, "lasdi.latent_space.Conv2DAutoencoder.export"]], "export() (lasdi.latent_space.latentspace method)": [[9, "lasdi.latent_space.LatentSpace.export"]], "fcs (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.fcs"]], "fcs (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.fcs"]], "forward() (lasdi.latent_space.autoencoder method)": [[9, "lasdi.latent_space.Autoencoder.forward"]], "forward() (lasdi.latent_space.cnn2d method)": [[9, "lasdi.latent_space.CNN2D.forward"]], "forward() (lasdi.latent_space.conv2dautoencoder method)": [[9, "lasdi.latent_space.Conv2DAutoencoder.forward"]], "forward() (lasdi.latent_space.latentspace method)": [[9, "lasdi.latent_space.LatentSpace.forward"]], "forward() (lasdi.latent_space.multilayerperceptron method)": [[9, "lasdi.latent_space.MultiLayerPerceptron.forward"]], "groups (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.groups"]], "init_weight() (lasdi.latent_space.cnn2d method)": [[9, "lasdi.latent_space.CNN2D.init_weight"]], "init_weight() (lasdi.latent_space.multilayerperceptron method)": [[9, "lasdi.latent_space.MultiLayerPerceptron.init_weight"]], "initial_condition_latent() (in module lasdi.latent_space)": [[9, "lasdi.latent_space.initial_condition_latent"]], "kernel_sizes (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.kernel_sizes"]], "lasdi.latent_space": [[9, "module-lasdi.latent_space"]], "layer_sizes (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.layer_sizes"]], "layer_sizes (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.layer_sizes"]], "load() (lasdi.latent_space.autoencoder method)": [[9, "lasdi.latent_space.Autoencoder.load"]], "load() (lasdi.latent_space.conv2dautoencoder method)": [[9, "lasdi.latent_space.Conv2DAutoencoder.load"]], "load() (lasdi.latent_space.latentspace method)": [[9, "lasdi.latent_space.LatentSpace.load"]], "n_layers (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.n_layers"]], "n_layers (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.n_layers"]], "n_z (lasdi.latent_space.latentspace attribute)": [[9, "lasdi.latent_space.LatentSpace.n_z"]], "padding_mode (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.padding_mode"]], "paddings (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.paddings"]], "print_architecture() (lasdi.latent_space.conv2dautoencoder method)": [[9, "lasdi.latent_space.Conv2DAutoencoder.print_architecture"]], "print_architecture() (lasdi.latent_space.multilayerperceptron method)": [[9, "lasdi.latent_space.MultiLayerPerceptron.print_architecture"]], "print_data_shape() (lasdi.latent_space.cnn2d method)": [[9, "lasdi.latent_space.CNN2D.print_data_shape"]], "qgrid_size (lasdi.latent_space.latentspace attribute)": [[9, "lasdi.latent_space.LatentSpace.qgrid_size"]], "reshape_index (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.reshape_index"]], "reshape_shape (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.reshape_shape"]], "set_batch_shape() (lasdi.latent_space.conv2dautoencoder method)": [[9, "lasdi.latent_space.Conv2DAutoencoder.set_batch_shape"]], "set_data_shape() (lasdi.latent_space.cnn2d method)": [[9, "lasdi.latent_space.CNN2D.set_data_shape"]], "space_dim (lasdi.latent_space.autoencoder attribute)": [[9, "lasdi.latent_space.Autoencoder.space_dim"]], "strides (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.strides"]], "backward (lasdi.networks.cnn2d.mode attribute)": [[10, "lasdi.networks.CNN2D.Mode.Backward"]], "cnn2d (class in lasdi.networks)": [[10, "lasdi.networks.CNN2D"]], "cnn2d.mode (class in lasdi.networks)": [[10, "lasdi.networks.CNN2D.Mode"]], "forward (lasdi.networks.cnn2d.mode attribute)": [[10, "lasdi.networks.CNN2D.Mode.Forward"]], "multilayerperceptron (class in lasdi.networks)": [[10, "lasdi.networks.MultiLayerPerceptron"]], "act (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.act"]], "act (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.act"]], "act_dict (in module lasdi.networks)": [[10, "lasdi.networks.act_dict"]], "act_type (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.act_type"]], "batch_reshape (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.batch_reshape"]], "bias (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.bias"]], "channels (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.channels"]], "compute_input_layer_size() (lasdi.networks.cnn2d class method)": [[10, "lasdi.networks.CNN2D.compute_input_layer_size"]], "compute_kernel_size() (lasdi.networks.cnn2d class method)": [[10, "lasdi.networks.CNN2D.compute_kernel_size"]], "compute_output_layer_size() (lasdi.networks.cnn2d class method)": [[10, "lasdi.networks.CNN2D.compute_output_layer_size"]], "data_shape (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.data_shape"]], "dilations (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.dilations"]], "fcs (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.fcs"]], "fcs (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.fcs"]], "forward() (lasdi.networks.cnn2d method)": [[10, "lasdi.networks.CNN2D.forward"]], "forward() (lasdi.networks.multilayerperceptron method)": [[10, "lasdi.networks.MultiLayerPerceptron.forward"]], "groups (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.groups"]], "init_weight() (lasdi.networks.cnn2d method)": [[10, "lasdi.networks.CNN2D.init_weight"]], "init_weight() (lasdi.networks.multilayerperceptron method)": [[10, "lasdi.networks.MultiLayerPerceptron.init_weight"]], "kernel_sizes (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.kernel_sizes"]], "lasdi.networks": [[10, "module-lasdi.networks"]], "layer_sizes (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.layer_sizes"]], "layer_sizes (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.layer_sizes"]], "n_layers (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.n_layers"]], "n_layers (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.n_layers"]], "padding_mode (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.padding_mode"]], "paddings (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.paddings"]], "print_architecture() (lasdi.networks.multilayerperceptron method)": [[10, "lasdi.networks.MultiLayerPerceptron.print_architecture"]], "print_data_shape() (lasdi.networks.cnn2d method)": [[10, "lasdi.networks.CNN2D.print_data_shape"]], "reshape_index (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.reshape_index"]], "reshape_shape (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.reshape_shape"]], "set_data_shape() (lasdi.networks.cnn2d method)": [[10, "lasdi.networks.CNN2D.set_data_shape"]], "strides (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.strides"]], "parameterspace (class in lasdi.param)": [[11, "lasdi.param.ParameterSpace"]], "appendtrainspace() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.appendTrainSpace"]], "createhypergridspace() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createHyperGridSpace"]], "createhypermeshgrid() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createHyperMeshGrid"]], "createinitialtrainspace() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createInitialTrainSpace"]], "createinitialtrainspaceforhull() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createInitialTrainSpaceForHull"]], "createtestgridspace() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createTestGridSpace"]], "createtestgridspaceforhull() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createTestGridSpaceForHull"]], "createtesthullspace() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createTestHullSpace"]], "create_uniform_1dspace() (in module lasdi.param)": [[11, "lasdi.param.create_uniform_1dspace"]], "export() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.export"]], "getparam1dspace (in module lasdi.param)": [[11, "lasdi.param.getParam1DSpace"]], "getparameter() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.getParameter"]], "get_1dspace_from_list() (in module lasdi.param)": [[11, "lasdi.param.get_1dspace_from_list"]], "lasdi.param": [[11, "module-lasdi.param"]], "load() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.load"]], "n_init (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.n_init"]], "n_param (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.n_param"]], "n_test() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.n_test"]], "n_train() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.n_train"]], "param_list (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.param_list"]], "param_name (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.param_name"]], "test_grid_sizes (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.test_grid_sizes"]], "test_meshgrid (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.test_meshgrid"]], "test_space (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.test_space"]], "train_space (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.train_space"]], "burgers1d (class in lasdi.physics.burgers1d)": [[12, "lasdi.physics.burgers1d.Burgers1D"]], "a_idx (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.a_idx"]], "convergence_threshold (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.convergence_threshold"]], "dim (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.dim"]], "dt (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.dt"]], "dx (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.dx"]], "export() (lasdi.physics.burgers1d.burgers1d method)": [[12, "lasdi.physics.burgers1d.Burgers1D.export"]], "grid_size (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.grid_size"]], "initial_condition() (lasdi.physics.burgers1d.burgers1d method)": [[12, "lasdi.physics.burgers1d.Burgers1D.initial_condition"]], "jacobian() (in module lasdi.physics.burgers1d)": [[12, "lasdi.physics.burgers1d.jacobian"]], "lasdi.physics.burgers1d": [[12, "module-lasdi.physics.burgers1d"]], "main() (in module lasdi.physics.burgers1d)": [[12, "lasdi.physics.burgers1d.main"]], "maxk (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.maxk"]], "nt (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.nt"]], "offline (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.offline"]], "qdim (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.qdim"]], "qgrid_size (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.qgrid_size"]], "residual() (lasdi.physics.burgers1d.burgers1d method)": [[12, "lasdi.physics.burgers1d.Burgers1D.residual"]], "residual_burgers() (in module lasdi.physics.burgers1d)": [[12, "lasdi.physics.burgers1d.residual_burgers"]], "solve() (lasdi.physics.burgers1d.burgers1d method)": [[12, "lasdi.physics.burgers1d.Burgers1D.solve"]], "solver() (in module lasdi.physics.burgers1d)": [[12, "lasdi.physics.burgers1d.solver"]], "t_grid (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.t_grid"]], "tmax (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.tmax"]], "w_idx (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.w_idx"]], "x_grid (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.x_grid"]], "xmax (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.xmax"]], "xmin (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.xmin"]], "offlinefom (class in lasdi.physics)": [[13, "lasdi.physics.OfflineFOM"]], "physics (class in lasdi.physics)": [[13, "lasdi.physics.Physics"]], "dim (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.dim"]], "dim (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.dim"]], "dt (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.dt"]], "dt (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.dt"]], "export() (lasdi.physics.offlinefom method)": [[13, "lasdi.physics.OfflineFOM.export"]], "export() (lasdi.physics.physics method)": [[13, "lasdi.physics.Physics.export"]], "generate_solutions() (lasdi.physics.offlinefom method)": [[13, "lasdi.physics.OfflineFOM.generate_solutions"]], "generate_solutions() (lasdi.physics.physics method)": [[13, "lasdi.physics.Physics.generate_solutions"]], "grid_size (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.grid_size"]], "grid_size (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.grid_size"]], "initial_condition() (lasdi.physics.physics method)": [[13, "lasdi.physics.Physics.initial_condition"]], "lasdi.physics": [[13, "module-lasdi.physics"]], "nt (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.nt"]], "nt (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.nt"]], "offline (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.offline"]], "offline (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.offline"]], "param_name (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.param_name"]], "qdim (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.qdim"]], "qdim (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.qdim"]], "qgrid_size (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.qgrid_size"]], "qgrid_size (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.qgrid_size"]], "residual() (lasdi.physics.physics method)": [[13, "lasdi.physics.Physics.residual"]], "solve() (lasdi.physics.physics method)": [[13, "lasdi.physics.Physics.solve"]], "t_grid (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.t_grid"]], "t_grid (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.t_grid"]], "x_grid (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.x_grid"]], "x_grid (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.x_grid"]], "compute_errors() (in module lasdi.postprocess)": [[14, "lasdi.postprocess.compute_errors"]], "heatmap2d() (in module lasdi.postprocess)": [[14, "lasdi.postprocess.heatmap2d"]], "lasdi.postprocess": [[14, "module-lasdi.postprocess"]], "plot_gp2d() (in module lasdi.postprocess)": [[14, "lasdi.postprocess.plot_gp2d"]], "plot_prediction() (in module lasdi.postprocess)": [[14, "lasdi.postprocess.plot_prediction"]], "timer (class in lasdi.timing)": [[15, "lasdi.timing.Timer"]], "calls (lasdi.timing.timer attribute)": [[15, "lasdi.timing.Timer.calls"]], "end() (lasdi.timing.timer method)": [[15, "lasdi.timing.Timer.end"]], "export() (lasdi.timing.timer method)": [[15, "lasdi.timing.Timer.export"]], "lasdi.timing": [[15, "module-lasdi.timing"]], "load() (lasdi.timing.timer method)": [[15, "lasdi.timing.Timer.load"]], "names (lasdi.timing.timer attribute)": [[15, "lasdi.timing.Timer.names"]], "print() (lasdi.timing.timer method)": [[15, "lasdi.timing.Timer.print"]], "start() (lasdi.timing.timer method)": [[15, "lasdi.timing.Timer.start"]], "starts (lasdi.timing.timer attribute)": [[15, "lasdi.timing.Timer.starts"]], "times (lasdi.timing.timer attribute)": [[15, "lasdi.timing.Timer.times"]], "collect_samples() (in module lasdi.workflow)": [[16, "lasdi.workflow.collect_samples"]], "initialize_latent_space() (in module lasdi.workflow)": [[16, "lasdi.workflow.initialize_latent_space"]], "initialize_physics() (in module lasdi.workflow)": [[16, "lasdi.workflow.initialize_physics"]], "initialize_trainer() (in module lasdi.workflow)": [[16, "lasdi.workflow.initialize_trainer"]], "lasdi.workflow": [[16, "module-lasdi.workflow"]], "latent_dict (in module lasdi.workflow)": [[16, "lasdi.workflow.latent_dict"]], "ld_dict (in module lasdi.workflow)": [[16, "lasdi.workflow.ld_dict"]], "main() (in module lasdi.workflow)": [[16, "lasdi.workflow.main"]], "parser (in module lasdi.workflow)": [[16, "lasdi.workflow.parser"]], "physics_dict (in module lasdi.workflow)": [[16, "lasdi.workflow.physics_dict"]], "pick_samples() (in module lasdi.workflow)": [[16, "lasdi.workflow.pick_samples"]], "run_samples() (in module lasdi.workflow)": [[16, "lasdi.workflow.run_samples"]], "step() (in module lasdi.workflow)": [[16, "lasdi.workflow.step"]], "trainer_dict (in module lasdi.workflow)": [[16, "lasdi.workflow.trainer_dict"]]}}) \ No newline at end of file +Search.setIndex({"docnames": ["autoapi/index", "autoapi/lasdi/enums/index", "autoapi/lasdi/fd/index", "autoapi/lasdi/gp/index", "autoapi/lasdi/gplasdi/index", "autoapi/lasdi/index", "autoapi/lasdi/inputs/index", "autoapi/lasdi/latent_dynamics/index", "autoapi/lasdi/latent_dynamics/sindy/index", "autoapi/lasdi/latent_space/index", "autoapi/lasdi/networks/index", "autoapi/lasdi/param/index", "autoapi/lasdi/physics/burgers1d/index", "autoapi/lasdi/physics/index", "autoapi/lasdi/postprocess/index", "autoapi/lasdi/timing/index", "autoapi/lasdi/workflow/index", "index"], "filenames": ["autoapi/index.rst", "autoapi/lasdi/enums/index.rst", "autoapi/lasdi/fd/index.rst", "autoapi/lasdi/gp/index.rst", "autoapi/lasdi/gplasdi/index.rst", "autoapi/lasdi/index.rst", "autoapi/lasdi/inputs/index.rst", "autoapi/lasdi/latent_dynamics/index.rst", "autoapi/lasdi/latent_dynamics/sindy/index.rst", "autoapi/lasdi/latent_space/index.rst", "autoapi/lasdi/networks/index.rst", "autoapi/lasdi/param/index.rst", "autoapi/lasdi/physics/burgers1d/index.rst", "autoapi/lasdi/physics/index.rst", "autoapi/lasdi/postprocess/index.rst", "autoapi/lasdi/timing/index.rst", "autoapi/lasdi/workflow/index.rst", "index.rst"], "titles": ["API Reference", "lasdi.enums", "lasdi.fd", "lasdi.gp", "lasdi.gplasdi", "lasdi", "lasdi.inputs", "lasdi.latent_dynamics", "lasdi.latent_dynamics.sindy", "lasdi.latent_space", "lasdi.networks", "lasdi.param", "lasdi.physics.burgers1d", "lasdi.physics", "lasdi.postprocess", "lasdi.timing", "lasdi.workflow", "LaSDI documentation"], "terms": {"thi": [0, 1, 4, 9, 11, 15], "page": 0, "contain": [0, 3, 4, 11, 15], "auto": 0, "gener": [0, 1, 3, 12, 13], "document": [0, 9, 10], "1": [0, 1, 2, 9, 10, 12, 13, 14], "lasdi": 0, "enum": [0, 5, 9, 10], "fd": [0, 5, 8], "gp": [0, 4, 5], "gplasdi": [0, 5, 16, 17], "input": [0, 4, 5, 9, 10], "latent_dynam": [0, 4, 5], "sindi": [0, 3, 4, 7, 14], "latent_spac": [0, 5], "network": [0, 5, 9], "param": [0, 3, 5, 12, 13, 14], "physic": [0, 4, 5, 9, 11, 14, 16, 17], "burgers1d": [0, 13, 16], "postprocess": [0, 5], "time": [0, 5, 7, 8, 9, 10], "workflow": [0, 5], "creat": 0, "sphinx": 0, "autoapi": 0, "nextstep": 1, "base": [1, 2, 8, 9, 10, 12, 13, 17], "enumer": [1, 9, 10], "deriv": [1, 8], "from": [1, 3, 6, 9, 10, 12, 15], "defin": [1, 4], "new": [1, 4], "train": [1, 3, 4, 8, 9, 10, 11], "picksampl": 1, "2": [1, 2, 9, 10, 12, 13], "runsampl": 1, "3": [1, 2, 8, 9, 10, 12, 13], "collectsampl": 1, "4": [1, 2], "result": 1, "unexecut": 1, "success": 1, "fail": 1, "complet": 1, "stencil": 2, "leftbdrdepth": 2, "0": [2, 4, 9, 10, 11, 12, 13, 14], "leftbdrwidth": 2, "leftbdrstencil": 2, "leftbdrnorm": 2, "interiorstencil": 2, "interiorindex": 2, "getoper": 2, "nx": [2, 12], "period": 2, "fals": [2, 6, 7, 8, 13, 16], "convert": [2, 11], "scipy_coo": 2, "sbp12": 2, "5": [2, 14], "sbp24": 2, "6": [2, 14], "sbp36": 2, "7": 2, "8": 2, "9": 2, "sbp48": 2, "10": [2, 14], "11": 2, "12": 2, "fddict": 2, "fit_gp": 3, "x": [3, 9, 10, 11], "y": 3, "each": [3, 8, 9, 10, 11, 15], "given": [3, 7, 8, 9, 10, 13], "interpol": [3, 17], "dataset": [3, 8], "n_train": [3, 7, 11], "n_param": [3, 11], "numpi": [3, 4, 7, 8, 9, 10, 11, 12, 13], "2d": [3, 4, 7, 8, 9, 10, 11, 12, 13], "arrai": [3, 4, 9, 10, 11, 12, 13], "n_coef": 3, "we": 3, "assum": [3, 8, 12, 13], "target": [3, 9, 10], "coeffici": [3, 7], "i": [3, 6, 7, 8, 9, 10, 11, 15, 16, 17], "independ": 3, "other": 3, "gp_dictionnari": [3, 4, 14], "sklearn": 3, "object": [3, 4], "eval_gp": 3, "param_grid": [3, 4, 9, 11], "comput": [3, 4, 7, 8, 9, 10, 12, 14, 17], "predict": [3, 17], "mean": 3, "standard": [3, 4], "deviat": [3, 4], "point": [3, 4, 7, 8, 11], "paramet": [3, 4, 9, 10, 11, 13, 14], "space": [3, 4, 9, 11, 16, 17], "grid": [3, 4, 11], "sample_coef": 3, "n_sampl": [3, 4, 14], "sampl": [3, 4, 7], "set": [3, 7, 9, 10], "od": [3, 8, 17], "one": [3, 6, 7], "coef_sampl": 3, "list": [3, 4, 6, 9, 10, 11, 15], "length": 3, "where": [3, 9, 10, 11], "term": [3, 8], "matrix": 3, "distribut": [3, 9, 10], "average_rom": 4, "autoencod": [4, 9, 14, 16, 17], "gp_dictionari": 4, "sample_rom": 4, "collect": 4, "rom": [4, 17], "trajectori": 4, "gaussian": [4, 17], "process": [4, 17], "regressor": 4, "size": [4, 8, 9, 10, 11, 13, 15], "n_test": [4, 11], "integ": [4, 9, 10], "assert": 4, "len": [4, 9, 10, 11], "shape": [4, 7, 8, 9, 10, 12, 13], "output": [4, 6, 7, 8, 9, 10, 11], "np": [4, 11], "nt": [4, 7, 8, 12, 13], "n_z": [4, 9], "get_fom_max_std": 4, "zi": 4, "maximum": [4, 14], "accross": 4, "find": [4, 6], "correspond": [4, 6, 8, 9, 10, 11], "locat": 4, "optimizer_to": 4, "optim": 4, "devic": 4, "bayesianglasdi": 4, "param_spac": 4, "config": [4, 8, 9, 11, 16], "run": [4, 15], "full": [4, 17], "It": [4, 17], "take": [4, 11], "pytorch": 4, "dictionnari": 4, "all": [4, 8, 9, 10, 15], "The": [4, 8, 9, 10, 11, 15], "method": [4, 15, 17], "activ": [4, 9, 10, 17], "learn": [4, 17], "loop": [4, 8], "reconstruct": 4, "loss": [4, 7], "fom": [4, 16], "data": [4, 9, 10, 12], "x_train": 4, "x_test": [4, 14], "timer": [4, 15], "lr": 4, "n_iter": 4, "max_it": 4, "max_greedy_it": 4, "ld_weight": 4, "coef_weight": 4, "mse": [4, 8], "path_checkpoint": 4, "path_result": 4, "best_loss": 4, "best_coef": 4, "none": [4, 6, 8, 9, 10, 11, 12, 13, 15, 16], "restart_it": 4, "training_loss": 4, "ae_loss": 4, "ld_loss": 4, "coef_loss": 4, "get_new_sample_point": 4, "export": [4, 7, 8, 9, 11, 12, 13, 15], "load": [4, 7, 9, 11, 15], "dict_": [4, 6, 7, 9, 11, 15], "verbos": 6, "inputpars": 6, "dict": [6, 10, 11, 15], "name": [6, 15], "getinput": 6, "kei": [6, 15], "fallback": 6, "datatyp": 6, "valu": [6, 9, 10, 14, 15], "If": [6, 9, 10, 15], "specifi": [6, 9, 10], "do": 6, "exist": 6, "us": [6, 9, 10, 17], "doe": [6, 15], "return": [6, 9, 10, 11, 15], "an": [6, 11], "error": [6, 14], "enforc": 6, "ha": [6, 9, 10], "right": 6, "getdictfromlist": 6, "list_": 6, "inputdict": 6, "get": 6, "val": 6, "note": [6, 9, 15], "onli": [6, 8, 9, 16], "first": [6, 9, 10], "item": 6, "even": 6, "more": 6, "than": 6, "latentdynam": [7, 8], "dim_": 7, "nt_": 7, "dim": [7, 8, 12, 13], "ncoef": [7, 8], "coef": [7, 8], "calibr": [7, 8], "z": [7, 8], "dt": [7, 8, 12, 13], "compute_loss": [7, 8], "true": [7, 8, 9, 10, 13, 14], "latent": [7, 9, 16, 17], "dynam": [7, 17], "seri": 7, "encod": [7, 8, 9], "3d": [7, 9, 10, 12, 13], "tensor": [7, 8, 9, 10], "time_dim": [7, 8], "space_dim": [7, 8, 9, 12, 13], "simul": [7, 8], "z0": [7, 8, 9], "t_grid": [7, 8, 12, 13], "integr": [7, 8], "initi": [7, 8, 9, 10, 11, 16], "condit": [7, 8, 9], "coefs_sampl": 7, "z0_sampl": 7, "fd_type": 8, "fd_oper": 8, "coef_norm_ord": 8, "over": 8, "case": 8, "dimens": [8, 9, 10, 11, 12, 13], "compute_time_deriv": 8, "build": [8, 11], "linear": [8, 9, 10], "ar": [8, 9, 11], "through": [8, 9, 10, 17], "finit": 8, "differ": 8, "timestep": 8, "uniform": [8, 9, 10, 11], "scalar": 8, "dzdt": 8, "same": [8, 9, 10, 15], "system": [8, 17], "u0": [8, 9, 12], "multilayerperceptron": [9, 10], "layer_s": [9, 10], "act_typ": [9, 10], "sigmoid": [9, 10], "reshape_index": [9, 10], "reshape_shap": [9, 10], "threshold": [9, 10], "torch": [9, 10], "nn": [9, 10], "modul": 9, "vanilla": [9, 10], "multi": [9, 10], "layer": [9, 10], "perceptron": [9, 10], "neural": [9, 10], "int": [9, 10, 11, 15], "vector": [9, 10, 11], "str": [9, 10, 15], "option": [9, 10], "type": [9, 10, 11, 15], "By": [9, 10, 17], "default": [9, 10], "see": [9, 10], "act_dict": [9, 10], "avail": [9, 10, 16], "optin": [9, 10], "index": [9, 10], "reshap": [9, 10], "either": [9, 10], "allow": [9, 10], "last": [9, 10], "execut": [9, 10], "which": [9, 10, 11], "behavior": [9, 10], "chang": [9, 10], "For": [9, 10], "detail": [9, 10], "action": [9, 10], "prod": [9, 10], "n_layer": [9, 10], "depth": [9, 10], "includ": [9, 10], "hidden": [9, 10], "fc": [9, 10], "featur": [9, 10], "between": [9, 10], "modulelist": [9, 10], "r_1": [9, 10], "r_2": [9, 10], "ldot": [9, 10], "r_n": [9, 10], "longrightarrow": [9, 10], "prod_": [9, 10], "n": [9, 10], "r_i": [9, 10], "act": [9, 10], "throughout": [9, 10], "forward": [9, 10], "evalu": [9, 10, 17], "pass": [9, 10], "must": [9, 10, 13, 15], "match": [9, 10, 13], "init_weight": [9, 10], "weight": [9, 10, 15, 17], "accord": [9, 10, 16, 17], "xavier": [9, 10], "print_architectur": [9, 10], "print": [9, 10, 15], "out": [9, 10], "architectur": [9, 10], "cnn2d": [9, 10], "mode": [9, 10], "stride": [9, 10], "pad": [9, 10], "dilat": [9, 10], "group": [9, 10], "bia": [9, 10], "padding_mod": [9, 10], "zero": [9, 10], "relu": [9, 10], "data_shap": [9, 10], "two": [9, 10], "dimension": [9, 10], "convolut": [9, 10], "direct": [9, 10], "cnn": [9, 10], "contract": [9, 10], "backward": [9, 10], "expand": [9, 10], "tupl": [9, 10, 11], "appli": [9, 10, 17], "bool": [9, 10], "_layer": [9, 10], "indic": [9, 10, 15], "k": [9, 10, 11], "th": [9, 10], "_size": [9, 10], "channel": [9, 10], "height": [9, 10], "width": [9, 10], "determin": [9, 10], "how": [9, 10], "api": [9, 10, 17], "can": [9, 10, 17], "kernel_s": [9, 10], "kernel": [9, 10], "automat": [9, 10], "so": [9, 10], "next": [9, 10], "conv2d": [9, 10], "batch_reshap": [9, 10], "4d": [9, 10], "arbitrari": [9, 10], "nd": [9, 10, 11, 12, 13], "set_data_shap": [9, 10], "batch": [9, 10], "order": [9, 10, 17], "n_1": [9, 10], "n_m": [9, 10], "c_1": [9, 10], "h_1": [9, 10], "w_1": [9, 10], "_reshap": [9, 10], "m": [9, 10, 17], "n_i": [9, 10], "self": [9, 10], "batch_shap": [9, 10], "print_data_shap": [9, 10], "equal": [9, 10, 11], "classmethod": [9, 10], "compute_kernel_s": [9, 10], "input_shap": [9, 10], "output_shap": [9, 10], "produc": [9, 10], "desir": [9, 10], "formula": [9, 10], "convtranspose2d": [9, 10], "compute_input_layer_s": [9, 10], "compute_output_layer_s": [9, 10], "initial_condition_lat": 9, "latentspac": 9, "qgrid_siz": [9, 12, 13], "abstract": 9, "check": 9, "variabl": 9, "restart": 9, "file": [9, 16], "instanc": 9, "attribut": 9, "decod": [9, 17], "conv2dautoencod": 9, "set_batch_shap": 9, "dictionari": [10, 11, 15], "function": 10, "elu": 10, "hardshrink": 10, "hardsigmoid": 10, "hardtanh": 10, "hardswish": 10, "leakyrelu": 10, "logsigmoid": 10, "multihead": 10, "multiheadattent": 10, "prelu": 10, "relu6": 10, "rrelu": 10, "selu": 10, "celu": 10, "gelu": 10, "silu": 10, "mish": 10, "softplu": 10, "softshrink": 10, "tanh": 10, "tanhshrink": 10, "get_1dspace_from_list": 11, "create_uniform_1dspac": 11, "getparam1dspac": 11, "parameterspac": 11, "param_list": 11, "param_nam": [11, 12, 13, 16], "train_spac": 11, "test_spac": 11, "n_init": [11, 14], "test_grid_s": 11, "test_meshgrid": 11, "createinitialtrainspac": 11, "createinitialtrainspaceforhul": 11, "concaten": 11, "provid": 11, "A": [11, 15, 17], "mesh_grid": 11, "d": [11, 17], "number": [11, 15], "exterior": 11, "createtestgridspac": 11, "createtestgridspaceforhul": 11, "test": 11, "when": 11, "hull": 11, "gridsiz": 11, "element": 11, "createtesthullspac": 11, "ani": 11, "within": 11, "convex": 11, "getparamet": 11, "param_vector": 11, "solv": [11, 12, 13, 17], "initial_condit": [11, 12, 13], "createhypermeshgrid": 11, "param_rang": 11, "1d": [11, 12, 13], "paramspac": 11, "createhypergridspac": 11, "appendtrainspac": 11, "cfg": [12, 13], "a_idx": 12, "w_idx": 12, "qdim": [12, 13], "offlin": [12, 13], "grid_siz": [12, 13], "higher": [12, 13], "xmin": 12, "xmax": 12, "dx": 12, "tmax": 12, "x_grid": [12, 13], "maxk": 12, "convergence_threshold": 12, "residu": [12, 13], "xhist": [12, 13], "residual_burg": 12, "un": 12, "uw": 12, "c": 12, "idxn1": 12, "burger": 12, "equat": 12, "http": 12, "github": 12, "com": 12, "llnl": 12, "glasdi": [12, 17], "jacobian": 12, "u": 12, "solver": 12, "main": [12, 16], "generate_solut": 13, "solut": [13, 17], "requir": 13, "specif": 13, "offlinefom": 13, "compute_error": 14, "x_pred": 14, "rel": 14, "plot_predict": 14, "scale": 14, "plot_gp2d": 14, "p1_mesh": 14, "p2_mesh": 14, "gp_mean": 14, "gp_std": 14, "param_train": 14, "param_label": 14, "p1": 14, "p2": 14, "plot_shap": 14, "figsiz": 14, "15": 14, "13": 14, "refin": 14, "cm": 14, "plt": 14, "jet": 14, "margin": 14, "05": 14, "heatmap2d": 14, "p1_grid": 14, "p2_grid": 14, "titl": 14, "light": [15, 17], "map": [15, 17], "job": 15, "call": 15, "store": 15, "total": 15, "float": 15, "start": 15, "instead": 15, "regist": 15, "arg": 15, "have": 15, "befor": 15, "end": 15, "increas": 15, "runtim": 15, "per": 15, "trainer_dict": 16, "latent_dict": 16, "ld_dict": 16, "physics_dict": 16, "parser": 16, "step": 16, "trainer": 16, "next_step": 16, "use_restart": 16, "initialize_train": 16, "restart_fil": 16, "class": 16, "model": [16, 17], "current": 16, "initialize_latent_spac": 16, "ae": 16, "initialize_phys": 16, "pick_sampl": 16, "run_sampl": 16, "collect_sampl": 16, "python": 17, "packag": 17, "identif": 17, "pde": 17, "govern": 17, "reduc": 17, "fast": 17, "accur": 17, "made": 17, "feed": 17, "also": 17, "support": 17, "parametr": 17, "uncertainti": 17, "via": 17, "bonnevil": 17, "christoph": 17, "xiaolong": 17, "he": 17, "april": 17, "tran": 17, "jun": 17, "sur": 17, "park": 17, "william": 17, "fri": 17, "daniel": 17, "messeng": 17, "siu": 17, "wun": 17, "cheung": 17, "et": 17, "al": 17, "comprehens": 17, "review": 17, "algorithm": 17, "intrus": 17, "non": 17, "arxiv": 17, "preprint": 17, "2403": 17, "10748": 17, "2024": 17, "youngsoo": 17, "choi": 17, "mechan": 17, "engin": 17, "399": 17, "2022": 17, "115436": 17, "jonathan": 17, "l": 17, "belof": 17, "jiun": 17, "shyan": 17, "chen": 17, "inform": 17, "greedi": 17, "journal": 17, "489": 17, "2023": 17, "112267": 17, "david": 17, "bortz": 17, "weak": 17, "form": 17, "427": 17, "116998": 17, "richard": 17, "yeonjong": 17, "shin": 17, "tlasdi": 17, "thermodynam": 17, "05848": 17, "debojyoti": 17, "ghosh": 17, "interpret": 17, "deep": 17, "418": 17, "116535": 17, "simultan": 17, "2407": 17, "00337": 17}, "objects": {"": [[5, 0, 0, "-", "lasdi"]], "lasdi": [[1, 0, 0, "-", "enums"], [2, 0, 0, "-", "fd"], [3, 0, 0, "-", "gp"], [4, 0, 0, "-", "gplasdi"], [6, 0, 0, "-", "inputs"], [7, 0, 0, "-", "latent_dynamics"], [9, 0, 0, "-", "latent_space"], [10, 0, 0, "-", "networks"], [11, 0, 0, "-", "param"], [13, 0, 0, "-", "physics"], [14, 0, 0, "-", "postprocess"], [15, 0, 0, "-", "timing"], [16, 0, 0, "-", "workflow"]], "lasdi.enums": [[1, 1, 1, "", "NextStep"], [1, 1, 1, "", "Result"]], "lasdi.enums.NextStep": [[1, 2, 1, "", "CollectSample"], [1, 2, 1, "", "PickSample"], [1, 2, 1, "", "RunSample"], [1, 2, 1, "", "Train"]], "lasdi.enums.Result": [[1, 2, 1, "", "Complete"], [1, 2, 1, "", "Fail"], [1, 2, 1, "", "Success"], [1, 2, 1, "", "Unexecuted"]], "lasdi.fd": [[2, 3, 1, "", "FDdict"], [2, 1, 1, "", "SBP12"], [2, 1, 1, "", "SBP24"], [2, 1, 1, "", "SBP36"], [2, 1, 1, "", "SBP48"], [2, 1, 1, "", "Stencil"]], "lasdi.fd.SBP12": [[2, 2, 1, "", "interiorIndexes"], [2, 2, 1, "", "interiorStencils"], [2, 2, 1, "", "leftBdrDepth"], [2, 2, 1, "", "leftBdrNorm"], [2, 2, 1, "", "leftBdrStencils"], [2, 2, 1, "", "leftBdrWidth"]], "lasdi.fd.SBP24": [[2, 2, 1, "", "interiorIndexes"], [2, 2, 1, "", "interiorStencils"], [2, 2, 1, "", "leftBdrDepth"], [2, 2, 1, "", "leftBdrNorm"], [2, 2, 1, "", "leftBdrStencils"], [2, 2, 1, "", "leftBdrWidth"]], "lasdi.fd.SBP36": [[2, 2, 1, "", "interiorIndexes"], [2, 2, 1, "", "interiorStencils"], [2, 2, 1, "", "leftBdrDepth"], [2, 2, 1, "", "leftBdrNorm"], [2, 2, 1, "", "leftBdrStencils"], [2, 2, 1, "", "leftBdrWidth"]], "lasdi.fd.SBP48": [[2, 2, 1, "", "interiorIndexes"], [2, 2, 1, "", "interiorStencils"], [2, 2, 1, "", "leftBdrDepth"], [2, 2, 1, "", "leftBdrNorm"], [2, 2, 1, "", "leftBdrStencils"], [2, 2, 1, "", "leftBdrWidth"]], "lasdi.fd.Stencil": [[2, 4, 1, "", "convert"], [2, 4, 1, "", "getOperators"], [2, 2, 1, "", "interiorIndexes"], [2, 2, 1, "", "interiorStencils"], [2, 2, 1, "", "leftBdrDepth"], [2, 2, 1, "", "leftBdrNorm"], [2, 2, 1, "", "leftBdrStencils"], [2, 2, 1, "", "leftBdrWidth"]], "lasdi.gp": [[3, 5, 1, "", "eval_gp"], [3, 5, 1, "", "fit_gps"], [3, 5, 1, "", "sample_coefs"]], "lasdi.gplasdi": [[4, 1, 1, "", "BayesianGLaSDI"], [4, 5, 1, "", "average_rom"], [4, 5, 1, "", "get_fom_max_std"], [4, 5, 1, "", "optimizer_to"], [4, 5, 1, "", "sample_roms"]], "lasdi.gplasdi.BayesianGLaSDI": [[4, 2, 1, "", "MSE"], [4, 2, 1, "", "X_test"], [4, 2, 1, "", "X_train"], [4, 2, 1, "", "ae_loss"], [4, 2, 1, "", "autoencoder"], [4, 2, 1, "", "best_coefs"], [4, 2, 1, "", "best_loss"], [4, 2, 1, "", "coef_loss"], [4, 2, 1, "", "coef_weight"], [4, 4, 1, "", "export"], [4, 4, 1, "", "get_new_sample_point"], [4, 2, 1, "", "latent_dynamics"], [4, 2, 1, "", "ld_loss"], [4, 2, 1, "", "ld_weight"], [4, 4, 1, "", "load"], [4, 2, 1, "", "lr"], [4, 2, 1, "", "max_greedy_iter"], [4, 2, 1, "", "max_iter"], [4, 2, 1, "", "n_iter"], [4, 2, 1, "", "n_samples"], [4, 2, 1, "", "optimizer"], [4, 2, 1, "", "param_space"], [4, 2, 1, "", "path_checkpoint"], [4, 2, 1, "", "path_results"], [4, 2, 1, "", "physics"], [4, 2, 1, "", "restart_iter"], [4, 2, 1, "", "timer"], [4, 4, 1, "", "train"], [4, 2, 1, "", "training_loss"]], "lasdi.inputs": [[6, 1, 1, "", "InputParser"], [6, 5, 1, "", "getDictFromList"], [6, 3, 1, "", "verbose"]], "lasdi.inputs.InputParser": [[6, 2, 1, "", "dict_"], [6, 4, 1, "", "getInput"], [6, 2, 1, "", "name"]], "lasdi.latent_dynamics": [[7, 1, 1, "", "LatentDynamics"], [8, 0, 0, "-", "sindy"]], "lasdi.latent_dynamics.LatentDynamics": [[7, 4, 1, "", "calibrate"], [7, 2, 1, "", "coefs"], [7, 2, 1, "", "dim"], [7, 4, 1, "", "export"], [7, 4, 1, "", "load"], [7, 2, 1, "", "ncoefs"], [7, 2, 1, "", "nt"], [7, 4, 1, "", "sample"], [7, 4, 1, "", "simulate"]], "lasdi.latent_dynamics.sindy": [[8, 1, 1, "", "SINDy"]], "lasdi.latent_dynamics.sindy.SINDy": [[8, 2, 1, "", "MSE"], [8, 4, 1, "", "calibrate"], [8, 2, 1, "", "coef_norm_order"], [8, 4, 1, "", "compute_time_derivative"], [8, 4, 1, "", "export"], [8, 2, 1, "", "fd"], [8, 2, 1, "", "fd_oper"], [8, 2, 1, "", "fd_type"], [8, 2, 1, "", "ncoefs"], [8, 4, 1, "", "simulate"]], "lasdi.latent_space": [[9, 1, 1, "", "Autoencoder"], [9, 1, 1, "", "CNN2D"], [9, 1, 1, "", "Conv2DAutoencoder"], [9, 1, 1, "", "LatentSpace"], [9, 1, 1, "", "MultiLayerPerceptron"], [9, 5, 1, "", "initial_condition_latent"]], "lasdi.latent_space.Autoencoder": [[9, 2, 1, "", "decoder"], [9, 2, 1, "", "encoder"], [9, 4, 1, "", "export"], [9, 4, 1, "", "forward"], [9, 4, 1, "", "load"], [9, 2, 1, "", "space_dim"]], "lasdi.latent_space.CNN2D": [[9, 1, 1, "", "Mode"], [9, 2, 1, "", "act"], [9, 2, 1, "", "batch_reshape"], [9, 2, 1, "", "bias"], [9, 2, 1, "", "channels"], [9, 4, 1, "", "compute_input_layer_size"], [9, 4, 1, "", "compute_kernel_size"], [9, 4, 1, "", "compute_output_layer_size"], [9, 2, 1, "", "data_shape"], [9, 2, 1, "", "dilations"], [9, 2, 1, "", "fcs"], [9, 4, 1, "", "forward"], [9, 2, 1, "", "groups"], [9, 4, 1, "", "init_weight"], [9, 2, 1, "", "kernel_sizes"], [9, 2, 1, "", "layer_sizes"], [9, 2, 1, "", "n_layers"], [9, 2, 1, "", "padding_mode"], [9, 2, 1, "", "paddings"], [9, 4, 1, "", "print_data_shape"], [9, 4, 1, "", "set_data_shape"], [9, 2, 1, "", "strides"]], "lasdi.latent_space.CNN2D.Mode": [[9, 2, 1, "", "Backward"], [9, 2, 1, "", "Forward"]], "lasdi.latent_space.Conv2DAutoencoder": [[9, 2, 1, "", "decoder"], [9, 2, 1, "", "encoder"], [9, 4, 1, "", "export"], [9, 4, 1, "", "forward"], [9, 4, 1, "", "load"], [9, 4, 1, "", "print_architecture"], [9, 4, 1, "", "set_batch_shape"]], "lasdi.latent_space.LatentSpace": [[9, 4, 1, "", "export"], [9, 4, 1, "", "forward"], [9, 4, 1, "", "load"], [9, 2, 1, "", "n_z"], [9, 2, 1, "", "qgrid_size"]], "lasdi.latent_space.MultiLayerPerceptron": [[9, 2, 1, "", "act"], [9, 2, 1, "", "act_type"], [9, 2, 1, "", "fcs"], [9, 4, 1, "", "forward"], [9, 4, 1, "", "init_weight"], [9, 2, 1, "", "layer_sizes"], [9, 2, 1, "", "n_layers"], [9, 4, 1, "", "print_architecture"], [9, 2, 1, "", "reshape_index"], [9, 2, 1, "", "reshape_shape"]], "lasdi.networks": [[10, 1, 1, "", "CNN2D"], [10, 1, 1, "", "MultiLayerPerceptron"], [10, 3, 1, "", "act_dict"]], "lasdi.networks.CNN2D": [[10, 1, 1, "", "Mode"], [10, 2, 1, "", "act"], [10, 2, 1, "", "batch_reshape"], [10, 2, 1, "", "bias"], [10, 2, 1, "", "channels"], [10, 4, 1, "", "compute_input_layer_size"], [10, 4, 1, "", "compute_kernel_size"], [10, 4, 1, "", "compute_output_layer_size"], [10, 2, 1, "", "data_shape"], [10, 2, 1, "", "dilations"], [10, 2, 1, "", "fcs"], [10, 4, 1, "", "forward"], [10, 2, 1, "", "groups"], [10, 4, 1, "", "init_weight"], [10, 2, 1, "", "kernel_sizes"], [10, 2, 1, "", "layer_sizes"], [10, 2, 1, "", "n_layers"], [10, 2, 1, "", "padding_mode"], [10, 2, 1, "", "paddings"], [10, 4, 1, "", "print_data_shape"], [10, 4, 1, "", "set_data_shape"], [10, 2, 1, "", "strides"]], "lasdi.networks.CNN2D.Mode": [[10, 2, 1, "", "Backward"], [10, 2, 1, "", "Forward"]], "lasdi.networks.MultiLayerPerceptron": [[10, 2, 1, "", "act"], [10, 2, 1, "", "act_type"], [10, 2, 1, "", "fcs"], [10, 4, 1, "", "forward"], [10, 4, 1, "", "init_weight"], [10, 2, 1, "", "layer_sizes"], [10, 2, 1, "", "n_layers"], [10, 4, 1, "", "print_architecture"], [10, 2, 1, "", "reshape_index"], [10, 2, 1, "", "reshape_shape"]], "lasdi.param": [[11, 1, 1, "", "ParameterSpace"], [11, 5, 1, "", "create_uniform_1dspace"], [11, 3, 1, "", "getParam1DSpace"], [11, 5, 1, "", "get_1dspace_from_list"]], "lasdi.param.ParameterSpace": [[11, 4, 1, "", "appendTrainSpace"], [11, 4, 1, "", "createHyperGridSpace"], [11, 4, 1, "", "createHyperMeshGrid"], [11, 4, 1, "", "createInitialTrainSpace"], [11, 4, 1, "", "createInitialTrainSpaceForHull"], [11, 4, 1, "", "createTestGridSpace"], [11, 4, 1, "", "createTestGridSpaceForHull"], [11, 4, 1, "", "createTestHullSpace"], [11, 4, 1, "", "export"], [11, 4, 1, "", "getParameter"], [11, 4, 1, "", "load"], [11, 2, 1, "", "n_init"], [11, 2, 1, "", "n_param"], [11, 4, 1, "", "n_test"], [11, 4, 1, "", "n_train"], [11, 2, 1, "", "param_list"], [11, 2, 1, "", "param_name"], [11, 2, 1, "", "test_grid_sizes"], [11, 2, 1, "", "test_meshgrid"], [11, 2, 1, "", "test_space"], [11, 2, 1, "", "train_space"]], "lasdi.physics": [[13, 1, 1, "", "OfflineFOM"], [13, 1, 1, "", "Physics"], [12, 0, 0, "-", "burgers1d"]], "lasdi.physics.OfflineFOM": [[13, 2, 1, "", "dim"], [13, 2, 1, "", "dt"], [13, 4, 1, "", "export"], [13, 4, 1, "", "generate_solutions"], [13, 2, 1, "", "grid_size"], [13, 2, 1, "", "nt"], [13, 2, 1, "", "offline"], [13, 2, 1, "", "qdim"], [13, 2, 1, "", "qgrid_size"], [13, 2, 1, "", "t_grid"], [13, 2, 1, "", "x_grid"]], "lasdi.physics.Physics": [[13, 2, 1, "", "dim"], [13, 2, 1, "", "dt"], [13, 4, 1, "", "export"], [13, 4, 1, "", "generate_solutions"], [13, 2, 1, "", "grid_size"], [13, 4, 1, "", "initial_condition"], [13, 2, 1, "", "nt"], [13, 2, 1, "", "offline"], [13, 2, 1, "", "param_name"], [13, 2, 1, "", "qdim"], [13, 2, 1, "", "qgrid_size"], [13, 4, 1, "", "residual"], [13, 4, 1, "", "solve"], [13, 2, 1, "", "t_grid"], [13, 2, 1, "", "x_grid"]], "lasdi.physics.burgers1d": [[12, 1, 1, "", "Burgers1D"], [12, 5, 1, "", "jacobian"], [12, 5, 1, "", "main"], [12, 5, 1, "", "residual_burgers"], [12, 5, 1, "", "solver"]], "lasdi.physics.burgers1d.Burgers1D": [[12, 2, 1, "", "a_idx"], [12, 2, 1, "", "convergence_threshold"], [12, 2, 1, "", "dim"], [12, 2, 1, "", "dt"], [12, 2, 1, "", "dx"], [12, 4, 1, "", "export"], [12, 2, 1, "", "grid_size"], [12, 4, 1, "", "initial_condition"], [12, 2, 1, "", "maxk"], [12, 2, 1, "", "nt"], [12, 2, 1, "", "offline"], [12, 2, 1, "", "qdim"], [12, 2, 1, "", "qgrid_size"], [12, 4, 1, "", "residual"], [12, 4, 1, "", "solve"], [12, 2, 1, "", "t_grid"], [12, 2, 1, "", "tmax"], [12, 2, 1, "", "w_idx"], [12, 2, 1, "", "x_grid"], [12, 2, 1, "", "xmax"], [12, 2, 1, "", "xmin"]], "lasdi.postprocess": [[14, 5, 1, "", "compute_errors"], [14, 5, 1, "", "heatmap2d"], [14, 5, 1, "", "plot_gp2d"], [14, 5, 1, "", "plot_prediction"]], "lasdi.timing": [[15, 1, 1, "", "Timer"]], "lasdi.timing.Timer": [[15, 2, 1, "", "calls"], [15, 4, 1, "", "end"], [15, 4, 1, "", "export"], [15, 4, 1, "", "load"], [15, 2, 1, "", "names"], [15, 4, 1, "", "print"], [15, 4, 1, "", "start"], [15, 2, 1, "", "starts"], [15, 2, 1, "", "times"]], "lasdi.workflow": [[16, 5, 1, "", "collect_samples"], [16, 5, 1, "", "initialize_latent_space"], [16, 5, 1, "", "initialize_physics"], [16, 5, 1, "", "initialize_trainer"], [16, 3, 1, "", "latent_dict"], [16, 3, 1, "", "ld_dict"], [16, 5, 1, "", "main"], [16, 3, 1, "", "parser"], [16, 3, 1, "", "physics_dict"], [16, 5, 1, "", "pick_samples"], [16, 5, 1, "", "run_samples"], [16, 5, 1, "", "step"], [16, 3, 1, "", "trainer_dict"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:data", "4": "py:method", "5": "py:function"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "data", "Python data"], "4": ["py", "method", "Python method"], "5": ["py", "function", "Python function"]}, "titleterms": {"api": 0, "refer": [0, 17], "lasdi": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], "enum": 1, "class": [1, 2, 4, 6, 7, 8, 9, 10, 11, 12, 13, 15], "modul": [1, 2, 3, 4, 6, 8, 10, 11, 12, 14, 15, 16], "content": [1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], "fd": 2, "attribut": [2, 6, 10, 11, 16], "gp": 3, "function": [3, 4, 6, 9, 11, 12, 14, 16], "gplasdi": 4, "submodul": [5, 7, 13], "input": 6, "latent_dynam": [7, 8], "packag": [7, 9, 13], "sindi": 8, "latent_spac": 9, "network": 10, "param": 11, "physic": [12, 13], "burgers1d": 12, "postprocess": 14, "time": 15, "workflow": 16, "document": 17}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx": 58}, "alltitles": {"API Reference": [[0, "api-reference"]], "lasdi.enums": [[1, "module-lasdi.enums"]], "Classes": [[1, "classes"], [2, "classes"], [4, "classes"], [6, "classes"], [7, "classes"], [8, "classes"], [9, "classes"], [10, "classes"], [11, "classes"], [12, "classes"], [13, "classes"], [15, "classes"]], "Module Contents": [[1, "module-contents"], [2, "module-contents"], [3, "module-contents"], [4, "module-contents"], [6, "module-contents"], [8, "module-contents"], [10, "module-contents"], [11, "module-contents"], [12, "module-contents"], [14, "module-contents"], [15, "module-contents"], [16, "module-contents"]], "lasdi.fd": [[2, "module-lasdi.fd"]], "Attributes": [[2, "attributes"], [6, "attributes"], [10, "attributes"], [11, "attributes"], [16, "attributes"]], "lasdi.gp": [[3, "module-lasdi.gp"]], "Functions": [[3, "functions"], [4, "functions"], [6, "functions"], [9, "functions"], [11, "functions"], [12, "functions"], [14, "functions"], [16, "functions"]], "lasdi.gplasdi": [[4, "module-lasdi.gplasdi"]], "lasdi": [[5, "module-lasdi"]], "Submodules": [[5, "submodules"], [7, "submodules"], [13, "submodules"]], "lasdi.inputs": [[6, "module-lasdi.inputs"]], "lasdi.latent_dynamics": [[7, "module-lasdi.latent_dynamics"]], "Package Contents": [[7, "package-contents"], [9, "package-contents"], [13, "package-contents"]], "lasdi.latent_dynamics.sindy": [[8, "module-lasdi.latent_dynamics.sindy"]], "lasdi.latent_space": [[9, "module-lasdi.latent_space"]], "lasdi.networks": [[10, "module-lasdi.networks"]], "lasdi.param": [[11, "module-lasdi.param"]], "lasdi.physics.burgers1d": [[12, "module-lasdi.physics.burgers1d"]], "lasdi.physics": [[13, "module-lasdi.physics"]], "lasdi.postprocess": [[14, "module-lasdi.postprocess"]], "lasdi.timing": [[15, "module-lasdi.timing"]], "lasdi.workflow": [[16, "module-lasdi.workflow"]], "LaSDI documentation": [[17, "lasdi-documentation"]], "Contents:": [[17, null]], "References": [[17, "references"]]}, "indexentries": {"collectsample (lasdi.enums.nextstep attribute)": [[1, "lasdi.enums.NextStep.CollectSample"]], "complete (lasdi.enums.result attribute)": [[1, "lasdi.enums.Result.Complete"]], "fail (lasdi.enums.result attribute)": [[1, "lasdi.enums.Result.Fail"]], "nextstep (class in lasdi.enums)": [[1, "lasdi.enums.NextStep"]], "picksample (lasdi.enums.nextstep attribute)": [[1, "lasdi.enums.NextStep.PickSample"]], "result (class in lasdi.enums)": [[1, "lasdi.enums.Result"]], "runsample (lasdi.enums.nextstep attribute)": [[1, "lasdi.enums.NextStep.RunSample"]], "success (lasdi.enums.result attribute)": [[1, "lasdi.enums.Result.Success"]], "train (lasdi.enums.nextstep attribute)": [[1, "lasdi.enums.NextStep.Train"]], "unexecuted (lasdi.enums.result attribute)": [[1, "lasdi.enums.Result.Unexecuted"]], "lasdi.enums": [[1, "module-lasdi.enums"]], "module": [[1, "module-lasdi.enums"], [2, "module-lasdi.fd"], [3, "module-lasdi.gp"], [4, "module-lasdi.gplasdi"], [5, "module-lasdi"], [6, "module-lasdi.inputs"], [7, "module-lasdi.latent_dynamics"], [8, "module-lasdi.latent_dynamics.sindy"], [9, "module-lasdi.latent_space"], [10, "module-lasdi.networks"], [11, "module-lasdi.param"], [12, "module-lasdi.physics.burgers1d"], [13, "module-lasdi.physics"], [14, "module-lasdi.postprocess"], [15, "module-lasdi.timing"], [16, "module-lasdi.workflow"]], "fddict (in module lasdi.fd)": [[2, "lasdi.fd.FDdict"]], "sbp12 (class in lasdi.fd)": [[2, "lasdi.fd.SBP12"]], "sbp24 (class in lasdi.fd)": [[2, "lasdi.fd.SBP24"]], "sbp36 (class in lasdi.fd)": [[2, "lasdi.fd.SBP36"]], "sbp48 (class in lasdi.fd)": [[2, "lasdi.fd.SBP48"]], "stencil (class in lasdi.fd)": [[2, "lasdi.fd.Stencil"]], "convert() (lasdi.fd.stencil method)": [[2, "lasdi.fd.Stencil.convert"]], "getoperators() (lasdi.fd.stencil method)": [[2, "lasdi.fd.Stencil.getOperators"]], "interiorindexes (lasdi.fd.sbp12 attribute)": [[2, "lasdi.fd.SBP12.interiorIndexes"]], "interiorindexes (lasdi.fd.sbp24 attribute)": [[2, "lasdi.fd.SBP24.interiorIndexes"]], "interiorindexes (lasdi.fd.sbp36 attribute)": [[2, "lasdi.fd.SBP36.interiorIndexes"]], "interiorindexes (lasdi.fd.sbp48 attribute)": [[2, "lasdi.fd.SBP48.interiorIndexes"]], "interiorindexes (lasdi.fd.stencil attribute)": [[2, "lasdi.fd.Stencil.interiorIndexes"]], "interiorstencils (lasdi.fd.sbp12 attribute)": [[2, "lasdi.fd.SBP12.interiorStencils"]], "interiorstencils (lasdi.fd.sbp24 attribute)": [[2, "lasdi.fd.SBP24.interiorStencils"]], "interiorstencils (lasdi.fd.sbp36 attribute)": [[2, "lasdi.fd.SBP36.interiorStencils"]], "interiorstencils (lasdi.fd.sbp48 attribute)": [[2, "lasdi.fd.SBP48.interiorStencils"]], "interiorstencils (lasdi.fd.stencil attribute)": [[2, "lasdi.fd.Stencil.interiorStencils"]], "lasdi.fd": [[2, "module-lasdi.fd"]], "leftbdrdepth (lasdi.fd.sbp12 attribute)": [[2, "lasdi.fd.SBP12.leftBdrDepth"]], "leftbdrdepth (lasdi.fd.sbp24 attribute)": [[2, "lasdi.fd.SBP24.leftBdrDepth"]], "leftbdrdepth (lasdi.fd.sbp36 attribute)": [[2, "lasdi.fd.SBP36.leftBdrDepth"]], "leftbdrdepth (lasdi.fd.sbp48 attribute)": [[2, "lasdi.fd.SBP48.leftBdrDepth"]], "leftbdrdepth (lasdi.fd.stencil attribute)": [[2, "lasdi.fd.Stencil.leftBdrDepth"]], "leftbdrnorm (lasdi.fd.sbp12 attribute)": [[2, "lasdi.fd.SBP12.leftBdrNorm"]], "leftbdrnorm (lasdi.fd.sbp24 attribute)": [[2, "lasdi.fd.SBP24.leftBdrNorm"]], "leftbdrnorm (lasdi.fd.sbp36 attribute)": [[2, "lasdi.fd.SBP36.leftBdrNorm"]], "leftbdrnorm (lasdi.fd.sbp48 attribute)": [[2, "lasdi.fd.SBP48.leftBdrNorm"]], "leftbdrnorm (lasdi.fd.stencil attribute)": [[2, "lasdi.fd.Stencil.leftBdrNorm"]], "leftbdrstencils (lasdi.fd.sbp12 attribute)": [[2, "lasdi.fd.SBP12.leftBdrStencils"]], "leftbdrstencils (lasdi.fd.sbp24 attribute)": [[2, "lasdi.fd.SBP24.leftBdrStencils"]], "leftbdrstencils (lasdi.fd.sbp36 attribute)": [[2, "lasdi.fd.SBP36.leftBdrStencils"]], "leftbdrstencils (lasdi.fd.sbp48 attribute)": [[2, "lasdi.fd.SBP48.leftBdrStencils"]], "leftbdrstencils (lasdi.fd.stencil attribute)": [[2, "lasdi.fd.Stencil.leftBdrStencils"]], "leftbdrwidth (lasdi.fd.sbp12 attribute)": [[2, "lasdi.fd.SBP12.leftBdrWidth"]], "leftbdrwidth (lasdi.fd.sbp24 attribute)": [[2, "lasdi.fd.SBP24.leftBdrWidth"]], "leftbdrwidth (lasdi.fd.sbp36 attribute)": [[2, "lasdi.fd.SBP36.leftBdrWidth"]], "leftbdrwidth (lasdi.fd.sbp48 attribute)": [[2, "lasdi.fd.SBP48.leftBdrWidth"]], "leftbdrwidth (lasdi.fd.stencil attribute)": [[2, "lasdi.fd.Stencil.leftBdrWidth"]], "eval_gp() (in module lasdi.gp)": [[3, "lasdi.gp.eval_gp"]], "fit_gps() (in module lasdi.gp)": [[3, "lasdi.gp.fit_gps"]], "lasdi.gp": [[3, "module-lasdi.gp"]], "sample_coefs() (in module lasdi.gp)": [[3, "lasdi.gp.sample_coefs"]], "bayesianglasdi (class in lasdi.gplasdi)": [[4, "lasdi.gplasdi.BayesianGLaSDI"]], "mse (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.MSE"]], "x_test (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.X_test"]], "x_train (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.X_train"]], "ae_loss (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.ae_loss"]], "autoencoder (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.autoencoder"]], "average_rom() (in module lasdi.gplasdi)": [[4, "lasdi.gplasdi.average_rom"]], "best_coefs (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.best_coefs"]], "best_loss (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.best_loss"]], "coef_loss (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.coef_loss"]], "coef_weight (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.coef_weight"]], "export() (lasdi.gplasdi.bayesianglasdi method)": [[4, "lasdi.gplasdi.BayesianGLaSDI.export"]], "get_fom_max_std() (in module lasdi.gplasdi)": [[4, "lasdi.gplasdi.get_fom_max_std"]], "get_new_sample_point() (lasdi.gplasdi.bayesianglasdi method)": [[4, "lasdi.gplasdi.BayesianGLaSDI.get_new_sample_point"]], "lasdi.gplasdi": [[4, "module-lasdi.gplasdi"]], "latent_dynamics (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.latent_dynamics"]], "ld_loss (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.ld_loss"]], "ld_weight (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.ld_weight"]], "load() (lasdi.gplasdi.bayesianglasdi method)": [[4, "lasdi.gplasdi.BayesianGLaSDI.load"]], "lr (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.lr"]], "max_greedy_iter (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.max_greedy_iter"]], "max_iter (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.max_iter"]], "n_iter (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.n_iter"]], "n_samples (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.n_samples"]], "optimizer (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.optimizer"]], "optimizer_to() (in module lasdi.gplasdi)": [[4, "lasdi.gplasdi.optimizer_to"]], "param_space (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.param_space"]], "path_checkpoint (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.path_checkpoint"]], "path_results (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.path_results"]], "physics (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.physics"]], "restart_iter (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.restart_iter"]], "sample_roms() (in module lasdi.gplasdi)": [[4, "lasdi.gplasdi.sample_roms"]], "timer (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.timer"]], "train() (lasdi.gplasdi.bayesianglasdi method)": [[4, "lasdi.gplasdi.BayesianGLaSDI.train"]], "training_loss (lasdi.gplasdi.bayesianglasdi attribute)": [[4, "lasdi.gplasdi.BayesianGLaSDI.training_loss"]], "lasdi": [[5, "module-lasdi"]], "inputparser (class in lasdi.inputs)": [[6, "lasdi.inputs.InputParser"]], "dict_ (lasdi.inputs.inputparser attribute)": [[6, "lasdi.inputs.InputParser.dict_"]], "getdictfromlist() (in module lasdi.inputs)": [[6, "lasdi.inputs.getDictFromList"]], "getinput() (lasdi.inputs.inputparser method)": [[6, "lasdi.inputs.InputParser.getInput"]], "lasdi.inputs": [[6, "module-lasdi.inputs"]], "name (lasdi.inputs.inputparser attribute)": [[6, "lasdi.inputs.InputParser.name"]], "verbose (in module lasdi.inputs)": [[6, "lasdi.inputs.verbose"]], "latentdynamics (class in lasdi.latent_dynamics)": [[7, "lasdi.latent_dynamics.LatentDynamics"]], "calibrate() (lasdi.latent_dynamics.latentdynamics method)": [[7, "lasdi.latent_dynamics.LatentDynamics.calibrate"]], "coefs (lasdi.latent_dynamics.latentdynamics attribute)": [[7, "lasdi.latent_dynamics.LatentDynamics.coefs"]], "dim (lasdi.latent_dynamics.latentdynamics attribute)": [[7, "lasdi.latent_dynamics.LatentDynamics.dim"]], "export() (lasdi.latent_dynamics.latentdynamics method)": [[7, "lasdi.latent_dynamics.LatentDynamics.export"]], "lasdi.latent_dynamics": [[7, "module-lasdi.latent_dynamics"]], "load() (lasdi.latent_dynamics.latentdynamics method)": [[7, "lasdi.latent_dynamics.LatentDynamics.load"]], "ncoefs (lasdi.latent_dynamics.latentdynamics attribute)": [[7, "lasdi.latent_dynamics.LatentDynamics.ncoefs"]], "nt (lasdi.latent_dynamics.latentdynamics attribute)": [[7, "lasdi.latent_dynamics.LatentDynamics.nt"]], "sample() (lasdi.latent_dynamics.latentdynamics method)": [[7, "lasdi.latent_dynamics.LatentDynamics.sample"]], "simulate() (lasdi.latent_dynamics.latentdynamics method)": [[7, "lasdi.latent_dynamics.LatentDynamics.simulate"]], "mse (lasdi.latent_dynamics.sindy.sindy attribute)": [[8, "lasdi.latent_dynamics.sindy.SINDy.MSE"]], "sindy (class in lasdi.latent_dynamics.sindy)": [[8, "lasdi.latent_dynamics.sindy.SINDy"]], "calibrate() (lasdi.latent_dynamics.sindy.sindy method)": [[8, "lasdi.latent_dynamics.sindy.SINDy.calibrate"]], "coef_norm_order (lasdi.latent_dynamics.sindy.sindy attribute)": [[8, "lasdi.latent_dynamics.sindy.SINDy.coef_norm_order"]], "compute_time_derivative() (lasdi.latent_dynamics.sindy.sindy method)": [[8, "lasdi.latent_dynamics.sindy.SINDy.compute_time_derivative"]], "export() (lasdi.latent_dynamics.sindy.sindy method)": [[8, "lasdi.latent_dynamics.sindy.SINDy.export"]], "fd (lasdi.latent_dynamics.sindy.sindy attribute)": [[8, "lasdi.latent_dynamics.sindy.SINDy.fd"]], "fd_oper (lasdi.latent_dynamics.sindy.sindy attribute)": [[8, "lasdi.latent_dynamics.sindy.SINDy.fd_oper"]], "fd_type (lasdi.latent_dynamics.sindy.sindy attribute)": [[8, "lasdi.latent_dynamics.sindy.SINDy.fd_type"]], "lasdi.latent_dynamics.sindy": [[8, "module-lasdi.latent_dynamics.sindy"]], "ncoefs (lasdi.latent_dynamics.sindy.sindy attribute)": [[8, "lasdi.latent_dynamics.sindy.SINDy.ncoefs"]], "simulate() (lasdi.latent_dynamics.sindy.sindy method)": [[8, "lasdi.latent_dynamics.sindy.SINDy.simulate"]], "autoencoder (class in lasdi.latent_space)": [[9, "lasdi.latent_space.Autoencoder"]], "backward (lasdi.latent_space.cnn2d.mode attribute)": [[9, "lasdi.latent_space.CNN2D.Mode.Backward"]], "cnn2d (class in lasdi.latent_space)": [[9, "lasdi.latent_space.CNN2D"]], "cnn2d.mode (class in lasdi.latent_space)": [[9, "lasdi.latent_space.CNN2D.Mode"]], "conv2dautoencoder (class in lasdi.latent_space)": [[9, "lasdi.latent_space.Conv2DAutoencoder"]], "forward (lasdi.latent_space.cnn2d.mode attribute)": [[9, "lasdi.latent_space.CNN2D.Mode.Forward"]], "latentspace (class in lasdi.latent_space)": [[9, "lasdi.latent_space.LatentSpace"]], "multilayerperceptron (class in lasdi.latent_space)": [[9, "lasdi.latent_space.MultiLayerPerceptron"]], "act (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.act"]], "act (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.act"]], "act_type (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.act_type"]], "batch_reshape (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.batch_reshape"]], "bias (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.bias"]], "channels (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.channels"]], "compute_input_layer_size() (lasdi.latent_space.cnn2d class method)": [[9, "lasdi.latent_space.CNN2D.compute_input_layer_size"]], "compute_kernel_size() (lasdi.latent_space.cnn2d class method)": [[9, "lasdi.latent_space.CNN2D.compute_kernel_size"]], "compute_output_layer_size() (lasdi.latent_space.cnn2d class method)": [[9, "lasdi.latent_space.CNN2D.compute_output_layer_size"]], "data_shape (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.data_shape"]], "decoder (lasdi.latent_space.autoencoder attribute)": [[9, "lasdi.latent_space.Autoencoder.decoder"]], "decoder (lasdi.latent_space.conv2dautoencoder attribute)": [[9, "lasdi.latent_space.Conv2DAutoencoder.decoder"]], "dilations (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.dilations"]], "encoder (lasdi.latent_space.autoencoder attribute)": [[9, "lasdi.latent_space.Autoencoder.encoder"]], "encoder (lasdi.latent_space.conv2dautoencoder attribute)": [[9, "lasdi.latent_space.Conv2DAutoencoder.encoder"]], "export() (lasdi.latent_space.autoencoder method)": [[9, "lasdi.latent_space.Autoencoder.export"]], "export() (lasdi.latent_space.conv2dautoencoder method)": [[9, "lasdi.latent_space.Conv2DAutoencoder.export"]], "export() (lasdi.latent_space.latentspace method)": [[9, "lasdi.latent_space.LatentSpace.export"]], "fcs (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.fcs"]], "fcs (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.fcs"]], "forward() (lasdi.latent_space.autoencoder method)": [[9, "lasdi.latent_space.Autoencoder.forward"]], "forward() (lasdi.latent_space.cnn2d method)": [[9, "lasdi.latent_space.CNN2D.forward"]], "forward() (lasdi.latent_space.conv2dautoencoder method)": [[9, "lasdi.latent_space.Conv2DAutoencoder.forward"]], "forward() (lasdi.latent_space.latentspace method)": [[9, "lasdi.latent_space.LatentSpace.forward"]], "forward() (lasdi.latent_space.multilayerperceptron method)": [[9, "lasdi.latent_space.MultiLayerPerceptron.forward"]], "groups (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.groups"]], "init_weight() (lasdi.latent_space.cnn2d method)": [[9, "lasdi.latent_space.CNN2D.init_weight"]], "init_weight() (lasdi.latent_space.multilayerperceptron method)": [[9, "lasdi.latent_space.MultiLayerPerceptron.init_weight"]], "initial_condition_latent() (in module lasdi.latent_space)": [[9, "lasdi.latent_space.initial_condition_latent"]], "kernel_sizes (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.kernel_sizes"]], "lasdi.latent_space": [[9, "module-lasdi.latent_space"]], "layer_sizes (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.layer_sizes"]], "layer_sizes (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.layer_sizes"]], "load() (lasdi.latent_space.autoencoder method)": [[9, "lasdi.latent_space.Autoencoder.load"]], "load() (lasdi.latent_space.conv2dautoencoder method)": [[9, "lasdi.latent_space.Conv2DAutoencoder.load"]], "load() (lasdi.latent_space.latentspace method)": [[9, "lasdi.latent_space.LatentSpace.load"]], "n_layers (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.n_layers"]], "n_layers (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.n_layers"]], "n_z (lasdi.latent_space.latentspace attribute)": [[9, "lasdi.latent_space.LatentSpace.n_z"]], "padding_mode (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.padding_mode"]], "paddings (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.paddings"]], "print_architecture() (lasdi.latent_space.conv2dautoencoder method)": [[9, "lasdi.latent_space.Conv2DAutoencoder.print_architecture"]], "print_architecture() (lasdi.latent_space.multilayerperceptron method)": [[9, "lasdi.latent_space.MultiLayerPerceptron.print_architecture"]], "print_data_shape() (lasdi.latent_space.cnn2d method)": [[9, "lasdi.latent_space.CNN2D.print_data_shape"]], "qgrid_size (lasdi.latent_space.latentspace attribute)": [[9, "lasdi.latent_space.LatentSpace.qgrid_size"]], "reshape_index (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.reshape_index"]], "reshape_shape (lasdi.latent_space.multilayerperceptron attribute)": [[9, "lasdi.latent_space.MultiLayerPerceptron.reshape_shape"]], "set_batch_shape() (lasdi.latent_space.conv2dautoencoder method)": [[9, "lasdi.latent_space.Conv2DAutoencoder.set_batch_shape"]], "set_data_shape() (lasdi.latent_space.cnn2d method)": [[9, "lasdi.latent_space.CNN2D.set_data_shape"]], "space_dim (lasdi.latent_space.autoencoder attribute)": [[9, "lasdi.latent_space.Autoencoder.space_dim"]], "strides (lasdi.latent_space.cnn2d attribute)": [[9, "lasdi.latent_space.CNN2D.strides"]], "backward (lasdi.networks.cnn2d.mode attribute)": [[10, "lasdi.networks.CNN2D.Mode.Backward"]], "cnn2d (class in lasdi.networks)": [[10, "lasdi.networks.CNN2D"]], "cnn2d.mode (class in lasdi.networks)": [[10, "lasdi.networks.CNN2D.Mode"]], "forward (lasdi.networks.cnn2d.mode attribute)": [[10, "lasdi.networks.CNN2D.Mode.Forward"]], "multilayerperceptron (class in lasdi.networks)": [[10, "lasdi.networks.MultiLayerPerceptron"]], "act (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.act"]], "act (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.act"]], "act_dict (in module lasdi.networks)": [[10, "lasdi.networks.act_dict"]], "act_type (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.act_type"]], "batch_reshape (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.batch_reshape"]], "bias (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.bias"]], "channels (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.channels"]], "compute_input_layer_size() (lasdi.networks.cnn2d class method)": [[10, "lasdi.networks.CNN2D.compute_input_layer_size"]], "compute_kernel_size() (lasdi.networks.cnn2d class method)": [[10, "lasdi.networks.CNN2D.compute_kernel_size"]], "compute_output_layer_size() (lasdi.networks.cnn2d class method)": [[10, "lasdi.networks.CNN2D.compute_output_layer_size"]], "data_shape (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.data_shape"]], "dilations (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.dilations"]], "fcs (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.fcs"]], "fcs (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.fcs"]], "forward() (lasdi.networks.cnn2d method)": [[10, "lasdi.networks.CNN2D.forward"]], "forward() (lasdi.networks.multilayerperceptron method)": [[10, "lasdi.networks.MultiLayerPerceptron.forward"]], "groups (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.groups"]], "init_weight() (lasdi.networks.cnn2d method)": [[10, "lasdi.networks.CNN2D.init_weight"]], "init_weight() (lasdi.networks.multilayerperceptron method)": [[10, "lasdi.networks.MultiLayerPerceptron.init_weight"]], "kernel_sizes (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.kernel_sizes"]], "lasdi.networks": [[10, "module-lasdi.networks"]], "layer_sizes (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.layer_sizes"]], "layer_sizes (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.layer_sizes"]], "n_layers (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.n_layers"]], "n_layers (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.n_layers"]], "padding_mode (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.padding_mode"]], "paddings (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.paddings"]], "print_architecture() (lasdi.networks.multilayerperceptron method)": [[10, "lasdi.networks.MultiLayerPerceptron.print_architecture"]], "print_data_shape() (lasdi.networks.cnn2d method)": [[10, "lasdi.networks.CNN2D.print_data_shape"]], "reshape_index (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.reshape_index"]], "reshape_shape (lasdi.networks.multilayerperceptron attribute)": [[10, "lasdi.networks.MultiLayerPerceptron.reshape_shape"]], "set_data_shape() (lasdi.networks.cnn2d method)": [[10, "lasdi.networks.CNN2D.set_data_shape"]], "strides (lasdi.networks.cnn2d attribute)": [[10, "lasdi.networks.CNN2D.strides"]], "parameterspace (class in lasdi.param)": [[11, "lasdi.param.ParameterSpace"]], "appendtrainspace() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.appendTrainSpace"]], "createhypergridspace() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createHyperGridSpace"]], "createhypermeshgrid() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createHyperMeshGrid"]], "createinitialtrainspace() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createInitialTrainSpace"]], "createinitialtrainspaceforhull() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createInitialTrainSpaceForHull"]], "createtestgridspace() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createTestGridSpace"]], "createtestgridspaceforhull() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createTestGridSpaceForHull"]], "createtesthullspace() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.createTestHullSpace"]], "create_uniform_1dspace() (in module lasdi.param)": [[11, "lasdi.param.create_uniform_1dspace"]], "export() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.export"]], "getparam1dspace (in module lasdi.param)": [[11, "lasdi.param.getParam1DSpace"]], "getparameter() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.getParameter"]], "get_1dspace_from_list() (in module lasdi.param)": [[11, "lasdi.param.get_1dspace_from_list"]], "lasdi.param": [[11, "module-lasdi.param"]], "load() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.load"]], "n_init (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.n_init"]], "n_param (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.n_param"]], "n_test() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.n_test"]], "n_train() (lasdi.param.parameterspace method)": [[11, "lasdi.param.ParameterSpace.n_train"]], "param_list (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.param_list"]], "param_name (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.param_name"]], "test_grid_sizes (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.test_grid_sizes"]], "test_meshgrid (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.test_meshgrid"]], "test_space (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.test_space"]], "train_space (lasdi.param.parameterspace attribute)": [[11, "lasdi.param.ParameterSpace.train_space"]], "burgers1d (class in lasdi.physics.burgers1d)": [[12, "lasdi.physics.burgers1d.Burgers1D"]], "a_idx (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.a_idx"]], "convergence_threshold (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.convergence_threshold"]], "dim (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.dim"]], "dt (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.dt"]], "dx (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.dx"]], "export() (lasdi.physics.burgers1d.burgers1d method)": [[12, "lasdi.physics.burgers1d.Burgers1D.export"]], "grid_size (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.grid_size"]], "initial_condition() (lasdi.physics.burgers1d.burgers1d method)": [[12, "lasdi.physics.burgers1d.Burgers1D.initial_condition"]], "jacobian() (in module lasdi.physics.burgers1d)": [[12, "lasdi.physics.burgers1d.jacobian"]], "lasdi.physics.burgers1d": [[12, "module-lasdi.physics.burgers1d"]], "main() (in module lasdi.physics.burgers1d)": [[12, "lasdi.physics.burgers1d.main"]], "maxk (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.maxk"]], "nt (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.nt"]], "offline (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.offline"]], "qdim (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.qdim"]], "qgrid_size (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.qgrid_size"]], "residual() (lasdi.physics.burgers1d.burgers1d method)": [[12, "lasdi.physics.burgers1d.Burgers1D.residual"]], "residual_burgers() (in module lasdi.physics.burgers1d)": [[12, "lasdi.physics.burgers1d.residual_burgers"]], "solve() (lasdi.physics.burgers1d.burgers1d method)": [[12, "lasdi.physics.burgers1d.Burgers1D.solve"]], "solver() (in module lasdi.physics.burgers1d)": [[12, "lasdi.physics.burgers1d.solver"]], "t_grid (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.t_grid"]], "tmax (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.tmax"]], "w_idx (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.w_idx"]], "x_grid (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.x_grid"]], "xmax (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.xmax"]], "xmin (lasdi.physics.burgers1d.burgers1d attribute)": [[12, "lasdi.physics.burgers1d.Burgers1D.xmin"]], "offlinefom (class in lasdi.physics)": [[13, "lasdi.physics.OfflineFOM"]], "physics (class in lasdi.physics)": [[13, "lasdi.physics.Physics"]], "dim (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.dim"]], "dim (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.dim"]], "dt (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.dt"]], "dt (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.dt"]], "export() (lasdi.physics.offlinefom method)": [[13, "lasdi.physics.OfflineFOM.export"]], "export() (lasdi.physics.physics method)": [[13, "lasdi.physics.Physics.export"]], "generate_solutions() (lasdi.physics.offlinefom method)": [[13, "lasdi.physics.OfflineFOM.generate_solutions"]], "generate_solutions() (lasdi.physics.physics method)": [[13, "lasdi.physics.Physics.generate_solutions"]], "grid_size (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.grid_size"]], "grid_size (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.grid_size"]], "initial_condition() (lasdi.physics.physics method)": [[13, "lasdi.physics.Physics.initial_condition"]], "lasdi.physics": [[13, "module-lasdi.physics"]], "nt (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.nt"]], "nt (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.nt"]], "offline (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.offline"]], "offline (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.offline"]], "param_name (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.param_name"]], "qdim (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.qdim"]], "qdim (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.qdim"]], "qgrid_size (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.qgrid_size"]], "qgrid_size (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.qgrid_size"]], "residual() (lasdi.physics.physics method)": [[13, "lasdi.physics.Physics.residual"]], "solve() (lasdi.physics.physics method)": [[13, "lasdi.physics.Physics.solve"]], "t_grid (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.t_grid"]], "t_grid (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.t_grid"]], "x_grid (lasdi.physics.offlinefom attribute)": [[13, "lasdi.physics.OfflineFOM.x_grid"]], "x_grid (lasdi.physics.physics attribute)": [[13, "lasdi.physics.Physics.x_grid"]], "compute_errors() (in module lasdi.postprocess)": [[14, "lasdi.postprocess.compute_errors"]], "heatmap2d() (in module lasdi.postprocess)": [[14, "lasdi.postprocess.heatmap2d"]], "lasdi.postprocess": [[14, "module-lasdi.postprocess"]], "plot_gp2d() (in module lasdi.postprocess)": [[14, "lasdi.postprocess.plot_gp2d"]], "plot_prediction() (in module lasdi.postprocess)": [[14, "lasdi.postprocess.plot_prediction"]], "timer (class in lasdi.timing)": [[15, "lasdi.timing.Timer"]], "calls (lasdi.timing.timer attribute)": [[15, "lasdi.timing.Timer.calls"]], "end() (lasdi.timing.timer method)": [[15, "lasdi.timing.Timer.end"]], "export() (lasdi.timing.timer method)": [[15, "lasdi.timing.Timer.export"]], "lasdi.timing": [[15, "module-lasdi.timing"]], "load() (lasdi.timing.timer method)": [[15, "lasdi.timing.Timer.load"]], "names (lasdi.timing.timer attribute)": [[15, "lasdi.timing.Timer.names"]], "print() (lasdi.timing.timer method)": [[15, "lasdi.timing.Timer.print"]], "start() (lasdi.timing.timer method)": [[15, "lasdi.timing.Timer.start"]], "starts (lasdi.timing.timer attribute)": [[15, "lasdi.timing.Timer.starts"]], "times (lasdi.timing.timer attribute)": [[15, "lasdi.timing.Timer.times"]], "collect_samples() (in module lasdi.workflow)": [[16, "lasdi.workflow.collect_samples"]], "initialize_latent_space() (in module lasdi.workflow)": [[16, "lasdi.workflow.initialize_latent_space"]], "initialize_physics() (in module lasdi.workflow)": [[16, "lasdi.workflow.initialize_physics"]], "initialize_trainer() (in module lasdi.workflow)": [[16, "lasdi.workflow.initialize_trainer"]], "lasdi.workflow": [[16, "module-lasdi.workflow"]], "latent_dict (in module lasdi.workflow)": [[16, "lasdi.workflow.latent_dict"]], "ld_dict (in module lasdi.workflow)": [[16, "lasdi.workflow.ld_dict"]], "main() (in module lasdi.workflow)": [[16, "lasdi.workflow.main"]], "parser (in module lasdi.workflow)": [[16, "lasdi.workflow.parser"]], "physics_dict (in module lasdi.workflow)": [[16, "lasdi.workflow.physics_dict"]], "pick_samples() (in module lasdi.workflow)": [[16, "lasdi.workflow.pick_samples"]], "run_samples() (in module lasdi.workflow)": [[16, "lasdi.workflow.run_samples"]], "step() (in module lasdi.workflow)": [[16, "lasdi.workflow.step"]], "trainer_dict (in module lasdi.workflow)": [[16, "lasdi.workflow.trainer_dict"]]}}) \ No newline at end of file