source: proiecte/pmake3d/make3d_original/Make3dSingleImageStanford_version0.1/third_party/opt/yalmip/extras/@lmi/loadobj.m @ 37

Last change on this file since 37 was 37, checked in by (none), 14 years ago

Added original make3d

File size: 2.0 KB
Line 
1function out = loadobj(obj)
2%loadOBJ load filter for LMI objects.
3
4% Restore persistent variables in SDPVAR class
5if ~isempty(obj.savedata)
6    try
7        % Some backwards compatability
8        if isfield(obj.savedata,'optsolution')
9            obj.savedata.internalsdpvarstate.optSolution = obj.savedata.optsolution;           
10        end
11        if isfield(obj.savedata.internalsdpvarstate,'optSolution')
12            if ~isfield(obj.savedata.internalsdpvarstate.optSolution,'values')
13                obj.savedata.internalsdpvarstate.optSolution.values = [];
14            end
15        end
16        if ~isfield(obj.savedata.internalsdpvarstate,'evalVariables')           
17            obj.savedata.internalsdpvarstate.evalVariables = [];           
18        end
19        if ~isfield(obj.savedata.internalsdpvarstate,'logicVariables')           
20            obj.savedata.internalsdpvarstate.logicVariables = [];           
21        end               
22        if ~isfield(obj.savedata.internalsdpvarstate,'complexpair')           
23            obj.savedata.internalsdpvarstate.complexpair = [];           
24        end       
25       
26        yalmip('setinternalsdpvarstate',obj.savedata.internalsdpvarstate);
27        yalmip('setinternalsetstate',obj.savedata.internalsetstate);
28    catch
29        error('Data probably saved in old YALMIP version. Cannot load this...');
30    end
31end
32if ~isa(obj,'lmi'),   
33    if ~isfield(obj,'LMIid')
34        LMIid = [];
35        obj = rmfield(obj,'savedata');
36        for i = 1:length(obj.clauses)
37            LMIid = [LMIid obj.clauses{i}{1}.LMIid];
38            X.data=obj.clauses{i}{1}.data;
39            X.type = obj.clauses{i}{1}.type;
40            X.symbolic = obj.clauses{i}{1}.symbolic;
41            X.handle = obj.clauses{i}{1}.handle;
42            X.strict = obj.clauses{i}{1}.strict;
43            X.cut = obj.clauses{i}{1}.cut;
44            obj.clauses{i} = X;
45        end
46        obj.LMIid = LMIid;
47    end   
48    obj.savedata = [];
49    out = class(obj,'lmi');
50else
51    out = obj;
52end
53out.savedata = [];
Note: See TracBrowser for help on using the repository browser.