rbmatlab  1.13.10
 All Classes Namespaces Files Functions Variables Groups Pages
IDetailedData.m
2  % an interface specialization for @ref IDetailedData "detailed data" objects
3  % used with the Greedy algorithm.
4  %
5  % An implementation of this interface stores its basis space functions in a
6  % @ref Greedy.DataTree.Detailed.INode "detailed data tree" object as computed
7  % by @ref Greedy.Interface "greedy algorithm" objects.
8  %
9 
10  properties
11  % the actual generated data tree of type Greedy.DataTree.Detailed.INode
12  datatree;
13  end
14 
15 
16  methods
17  function dd = IDetailedData(bg_descr, model_data)
18  % function dd = IDetailedData(bg_descr, model_data)
19  % constructor forwarding the arguments to IDetailedData constructor
20 
21  dd = dd@IDetailedData(bg_descr, model_data);
22  end
23 
24  function detailed_data_leaf = get_leaf(this, rmodel)
25  % function reduced_data_leaf = get_leaf(this, rmodel)
26  % returns the @ref .Greedy.DataTree.Detailed.ILeafNode "data tree leaf node"
27  % for a specific combination of parameters and time indices given by a
28  % @ref .IReducedModel "reduced model".
29  %
30  % Parameters:
31  % rmodel: of type .Greedy.User.IReducedModel
32  %
33  % Return values:
34  % detailed_data_leaf: object of type .Greedy.DataTree.Detailed.ILeafNode
35  % which actually stores a reduced basis space.
36 
37  dmodel = rmodel.detailed_model;
38 
39  if isfield(dmodel.descr, 'nt')
40  nt = dmodel.descr.nt;
41  else
42  nt = [];
43  end
44 
45  detailed_data_leaf = get_by_description(this.datatree, dmodel);
46  end
47 
48  end
49 end