@@ -125,18 +125,21 @@ def to_fiat(self):
125125 nodes .extend (fiat_dofs )
126126 entity_ids [dim ][dofs [i ].trace_entity .id - min_ids [dim ]].extend ([counter + i for i in range (len (fiat_dofs ))])
127127 counter += len (fiat_dofs )
128+ print ("nodes" , nodes )
128129 entity_perms , pure_perm = self .make_dof_perms (ref_el , entity_ids , nodes , poly_set )
129- self .matrices = self .make_overall_dense_matrices (ref_el , entity_ids , nodes , poly_set )
130+ # self.matrices = self.make_overall_dense_matrices(ref_el, entity_ids, nodes, poly_set)
130131 form_degree = 1 if self .spaces [0 ].set_shape else 0
131132 print ("my" , [n .pt_dict for n in nodes ])
132133 print (entity_perms )
133134 print (entity_ids )
134- print (ref_el . vertices )
135+ print (nodes )
135136 print ()
136137 # TODO: Change this when Dense case in Firedrake
137138 if pure_perm :
139+ self .matrices = self .make_overall_dense_matrices (ref_el , entity_ids , nodes , poly_set )
138140 dual = DualSet (nodes , ref_el , entity_ids , entity_perms )
139141 else :
142+ self .matrices = None
140143 dual = DualSet (nodes , ref_el , entity_ids )
141144 return CiarletElement (poly_set , dual , degree , form_degree )
142145
@@ -221,7 +224,7 @@ def make_overall_dense_matrices(self, ref_el, entity_ids, nodes, poly_set):
221224 if g .perm .is_Identity :
222225 res_dict [dim ][e_id ][val ] = np .eye (len (nodes ))
223226 else :
224- new_nodes = [d (g ).convert_to_fiat (ref_el , degree ) for d in self .generate ()]
227+ new_nodes = sum ( [d (g ).convert_to_fiat (ref_el , degree ) for d in self .generate ()],[])
225228 transformed_V , transformed_basis = self .compute_dense_matrix (ref_el , entity_ids , new_nodes , poly_set )
226229 res_dict [dim ][e_id ][val ] = np .matmul (transformed_basis , original_V .T )
227230 return res_dict
0 commit comments