Changeset 25582


Ignore:
Timestamp:
09/17/20 15:47:09 (5 years ago)
Author:
Mathieu Morlighem
Message:

CHG: no need to look at type anymore for dependents

Location:
issm/trunk-jpl/src/m/classes
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified issm/trunk-jpl/src/m/classes/autodiff.m

    r23245 r25582  
    107107                        if(num_dependent_objects),
    108108                                names={};
    109                                 types=zeros(num_dependent_objects,1);
    110109                                indices=zeros(num_dependent_objects,1);
    111110
     
    114113
    115114                                        names{i}=dep.name;
    116                                         types(i)=dep.typetoscalar();
    117115                                        indices(i)=dep.index;
    118116                                end
    119117                                WriteData(fid,prefix,'data',names,'name','md.autodiff.dependent_object_names','format','StringArray');
    120                                 WriteData(fid,prefix,'data',types,'name','md.autodiff.dependent_object_types','format','IntMat','mattype',3);
    121118                                WriteData(fid,prefix,'data',indices,'name','md.autodiff.dependent_object_indices','format','IntMat','mattype',3);
    122119                        end
     
    128125                        if(num_independent_objects),
    129126                                names=cell(num_independent_objects,1);
    130                                 types=zeros(num_independent_objects,1);
    131127
    132128                                max_parameters_pre = [];
     
    144140
    145141                                        names{i}=indep.name;
    146                                         types(i)=indep.typetoscalar();
    147                                        
    148142                                        if indep.control_size == 1 && M_size == true
    149143                                                indep.min_parameters = [indep.min_parameters;NaN];
     
    161155
    162156                                WriteData(fid,prefix,'data',names,'name','md.autodiff.independent_object_names','format','StringArray');
    163                                 WriteData(fid,prefix,'data',types,'name','md.autodiff.independent_object_types','format','IntMat','mattype',3);
    164157                                WriteData(fid,prefix,'data',min_parameters,'name','md.autodiff.independent_min_parameters','format','DoubleMat','mattype',3);
    165158                 WriteData(fid,prefix,'data',max_parameters,'name','md.autodiff.independent_max_parameters','format','DoubleMat','mattype',3);
     
    179172                                                break;
    180173                                        else
    181                                                 if strcmpi(indep.type,'scalar'),
    182                                                         index=index+1;
    183                                                 else
    184                                                         index=index+indep.nods;
    185                                                 end
     174                                                index=index+1;
    186175                                        end
    187176                                end
     
    200189                                                break;
    201190                                        else
    202                                                 if strcmpi(dep.type,'scalar'),
    203                                                         index=index+1;
    204                                                 else
    205                                                         index=index+dep.nods;
    206                                                 end
     191                                                index=index+1;
    207192                                        end
    208193                                end
     
    221206                                                break;
    222207                                        else
    223                                                 if strcmpi(indep.type,'scalar'),
    224                                                         indices=indices+1;
    225                                                 else
    226                                                         indices=indices+indep.nods;
    227                                                 end
     208                                                indices=indices+1;
    228209                                        end
    229210                                end
  • TabularUnified issm/trunk-jpl/src/m/classes/autodiff.py

    r24213 r25582  
    111111        if num_dependent_objects:
    112112            names = []
    113             types = np.zeros(num_dependent_objects)
    114113            indices = np.zeros(num_dependent_objects)
    115114
    116115            for i, dep in enumerate(self.dependents):
    117116                names.append(dep.name)
    118                 types[i] = dep.typetoscalar()
    119117                indices[i] = dep.index
    120118
    121119            WriteData(fid, prefix, 'data', names, 'name', 'md.autodiff.dependent_object_names', 'format', 'StringArray')
    122             WriteData(fid, prefix, 'data', types, 'name', 'md.autodiff.dependent_object_types', 'format', 'IntMat', 'mattype', 3)
    123120            WriteData(fid, prefix, 'data', indices, 'name', 'md.autodiff.dependent_object_indices', 'format', 'IntMat', 'mattype', 3)
    124121            #}}}
     
    129126        if num_independent_objects:
    130127            names = [None] * num_independent_objects
    131             types = np.zeros(num_independent_objects)
    132128
    133129            for i, indep in enumerate(self.independents):
    134130                names[i] = indep.name
    135                 types[i] = indep.typetoscalar()
    136131
    137132            WriteData(fid, prefix, 'data', names, 'name', 'md.autodiff.independent_object_names', 'format', 'StringArray')
    138             WriteData(fid, prefix, 'data', types, 'name', 'md.autodiff.independent_object_types', 'format', 'IntMat', 'mattype', 3)
    139133            #}}}
    140134        #if driver is fos_forward, build index:  {{{
     
    147141                    break
    148142                else:
    149                     if strcmpi(indep.type, 'scalar'):
    150                         index += 1
    151                     else:
    152                         index += indep.nods
     143                    index += 1
    153144
    154145            index -= 1  #get c - index numbering going
     
    164155                    break
    165156                else:
    166                     if strcmpi(dep.type, 'scalar'):
    167                         index += 1
    168                     else:
    169                         index += dep.nods
     157                    index += 1
    170158
    171159            index -= 1  #get c - index numbering going
     
    181169                    break
    182170                else:
    183                     if strcmpi(indep.type, 'scalar'):
    184                         indices += 1
    185                     else:
    186                         indices += indep.nods
     171                    indices += 1
    187172
    188173            indices -= 1  #get c - indices numbering going
Note: See TracChangeset for help on using the changeset viewer.