rbmatlab  1.16.09
 All Classes Namespaces Files Functions Variables Modules Pages
Functions
nonlin_evol_gen_detailed_data.m File Reference

prepares detailed_data structure with high dimensional like reduced basis functions. More...

Go to the source code of this file.

Functions

function
detailed_data = 
nonlin_evol_gen_detailed_data (model, model_data)
 prepares detailed_data structure with high dimensional like reduced basis functions. More...
 

Detailed Description

prepares detailed_data structure with high dimensional like reduced basis functions.

Definition in file nonlin_evol_gen_detailed_data.m.

Function Documentation

function detailed_data = nonlin_evol_gen_detailed_data (   model,
  model_data 
)

prepares detailed_data structure with high dimensional like reduced basis functions.

method, which prepares detailed_data, which is meant as data, that may be dependent on \(H\), and is not required during the online-simulation, but it may be used for reconstruction purposes or computation of online_quantities. i.e. reduced basis vectors, colateral reduced basis spaces, grid, etc. can be stored here.

The grid, the collateral basis for the explicit nonlinearity and the reduced basis are generated in this order.

Note
The reduced basis generation is delegated to the function rb_basis_generation().
  • allowed dependency of data: \(H\)
  • allowed dependency of computation: \(H\)
  • unknown at this stage: \(\mu, N_{\max}, M_{\max}, N, M\)
Parameters
modelmodel
model_datamodel data
Return values
detailed_datastructure containing all the reduced basis data and information about the generation process.
Required fields of model:
  • Nmax —  maximum number of reduced basis vectors to generate
  • Mmax —  maximum number of collateral reduced basis vectors to generate
  • Mstrich —  number of collateral reduced basis function used for a posteriori error estimation.
  • ei_numintervals —  (only used in param-time-space-grid mode) the finite parameter set for which the empirical interpolation is trained, is given by through a uniform distribution of parameters in the bounds given by model.mu_ranges. This field specifies the number of parameters in each component direction.
  • ei_space_operators —  a cell array of function pointers to the localized operators for which a collateral reduced basis space shall be created.
  • CRB_generation_mode —  a string which is either
    • file_load : simple loading of collateral reduced basis from a file
    • param-time-space-grid : search for CRB vectors in a discrete subspace of the space of all operator evaluations on solutions for parameters in the model.mu_range boundaries and all timesteps.
  • CRB_basis_filename —  (only used in file_load mode) name of file, that contains precomputed collateral reduced basis QM.
  • separate_CRBs —  boolean flag, indicating whether, the operator evaluations shall be stored in different directories for the later computation of separate collateral reduced basis spaces for each operator, or combined a single directory.
  • mu_ranges —  matrix storing the admissable ranges for parameter vector components. Each two dimensional column vector represents a range for a component specified by model.mu_names.
  • nt —  number of time steps for evolution discretizations
  • sMmax —  sMmax
  • verbose —  flag indicating the verbosity level of informative output
  • ei_stop_epsilon_first —  ei stop epsilon first
  • extend_crb —  extend crb
Optional fields of model:
  • adaptive_time_split_mode —  boolean flag indicating whether the time slices shall be computed adaptively. (default == false)
  • time_split_Mmax —  when collateral reduced basis reaches this size, the current time slice is split in adaptive_time_split_mode (default = model.ei_Mmax)
  • minimum_time_slice —  when time slice contains only this many number of time steps, adaptation is stopped in adaptive_time_split_mode. (default = 1)
  • ei_stop_epsilon —  interpolation error limit stopping the basis extension when reached. This needs to be strictly positive in adaptive_time_split_mode. (default = 0 respectively 1e-6 in adaptive_time_split_mode)
  • ei_time_splits —  number of time slices the discrete time interval shall (initially) be splitted into. (default = 1)
Generated fields of detailed_data:
  • grid —  grid to be used in the subsequent stages, copied from model_data
  • QM —  a matrix of columnwise DOF-vectors \(q_j\) for interpolation to be used as the colateral basis
  • TM —  a vector for the set of magic points by containing the index numbers of the corresponding DOF-nodes (In case of piecewise constant or linear basis-functions, the maxima \(x_i\) always can be found in a cell centroid (deg=0) or a node (deg=1).
  • BM —  the corresponding interpolation-matrix of dimension Mmax x Mmax, i.e. interpolation can be done by solving the equation system \(B \sigma = \left(\zeta(x_1), \ldots, \zeta(x_M)\right)\) then \(Q \sigma\) is the empirical interpolation. Note, that this reconstruction may not be done in the online phase!
  • ei_info —  details on the empirical interpolation procedure as produced by ei_detailed() plus the field extension_mus
  • ei_info.extension_mus —  a matrix whose column vectors hold the parameter vectors corresponding to the solution trajectory serving as a basis extension function.
  • RB —  matrix with Nmax columns holding the reduced basis vectors
  • implicit_crb_index —  implicit crb index
  • explicit_crb_index —  explicit crb index
  • time_split_map —  time split map

Definition at line 17 of file nonlin_evol_gen_detailed_data.m.

Here is the call graph for this function: