Changeset 25582
- Timestamp:
- 09/17/20 15:47:09 (5 years ago)
- 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 107 107 if(num_dependent_objects), 108 108 names={}; 109 types=zeros(num_dependent_objects,1);110 109 indices=zeros(num_dependent_objects,1); 111 110 … … 114 113 115 114 names{i}=dep.name; 116 types(i)=dep.typetoscalar();117 115 indices(i)=dep.index; 118 116 end 119 117 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);121 118 WriteData(fid,prefix,'data',indices,'name','md.autodiff.dependent_object_indices','format','IntMat','mattype',3); 122 119 end … … 128 125 if(num_independent_objects), 129 126 names=cell(num_independent_objects,1); 130 types=zeros(num_independent_objects,1);131 127 132 128 max_parameters_pre = []; … … 144 140 145 141 names{i}=indep.name; 146 types(i)=indep.typetoscalar();147 148 142 if indep.control_size == 1 && M_size == true 149 143 indep.min_parameters = [indep.min_parameters;NaN]; … … 161 155 162 156 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);164 157 WriteData(fid,prefix,'data',min_parameters,'name','md.autodiff.independent_min_parameters','format','DoubleMat','mattype',3); 165 158 WriteData(fid,prefix,'data',max_parameters,'name','md.autodiff.independent_max_parameters','format','DoubleMat','mattype',3); … … 179 172 break; 180 173 else 181 if strcmpi(indep.type,'scalar'), 182 index=index+1; 183 else 184 index=index+indep.nods; 185 end 174 index=index+1; 186 175 end 187 176 end … … 200 189 break; 201 190 else 202 if strcmpi(dep.type,'scalar'), 203 index=index+1; 204 else 205 index=index+dep.nods; 206 end 191 index=index+1; 207 192 end 208 193 end … … 221 206 break; 222 207 else 223 if strcmpi(indep.type,'scalar'), 224 indices=indices+1; 225 else 226 indices=indices+indep.nods; 227 end 208 indices=indices+1; 228 209 end 229 210 end -
TabularUnified issm/trunk-jpl/src/m/classes/autodiff.py ¶
r24213 r25582 111 111 if num_dependent_objects: 112 112 names = [] 113 types = np.zeros(num_dependent_objects)114 113 indices = np.zeros(num_dependent_objects) 115 114 116 115 for i, dep in enumerate(self.dependents): 117 116 names.append(dep.name) 118 types[i] = dep.typetoscalar()119 117 indices[i] = dep.index 120 118 121 119 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)123 120 WriteData(fid, prefix, 'data', indices, 'name', 'md.autodiff.dependent_object_indices', 'format', 'IntMat', 'mattype', 3) 124 121 #}}} … … 129 126 if num_independent_objects: 130 127 names = [None] * num_independent_objects 131 types = np.zeros(num_independent_objects)132 128 133 129 for i, indep in enumerate(self.independents): 134 130 names[i] = indep.name 135 types[i] = indep.typetoscalar()136 131 137 132 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)139 133 #}}} 140 134 #if driver is fos_forward, build index: {{{ … … 147 141 break 148 142 else: 149 if strcmpi(indep.type, 'scalar'): 150 index += 1 151 else: 152 index += indep.nods 143 index += 1 153 144 154 145 index -= 1 #get c - index numbering going … … 164 155 break 165 156 else: 166 if strcmpi(dep.type, 'scalar'): 167 index += 1 168 else: 169 index += dep.nods 157 index += 1 170 158 171 159 index -= 1 #get c - index numbering going … … 181 169 break 182 170 else: 183 if strcmpi(indep.type, 'scalar'): 184 indices += 1 185 else: 186 indices += indep.nods 171 indices += 1 187 172 188 173 indices -= 1 #get c - indices numbering going
Note:
See TracChangeset
for help on using the changeset viewer.