On Thu, Oct 23, 2008 at 05:24:54PM +0200, Anders Logg wrote:
Now that we have removed DofMapSet, how should the general assembly
interface look? We have lots of simple assemble() functions and they
all end up calling the main function which is
void assemble(GenericTensor& A,
const ufc::form& form,
const Array<Function*>& coefficients,
const DofMapSet& dof_map_set,
const MeshFunction<uint>* cell_domains,
const MeshFunction<uint>* exterior_facet_domains,
const MeshFunction<uint>* interior_facet_domains,
bool reset_tensor = true);
One option would be
void assemble(GenericTensor& A,
const ufc::form& form,
const std::vector<std::tr1::shared_ptr<FunctionSpace> > function_spaces,
const std::vector<std::tr1::shared_ptr<Function> > coefficients,
const MeshFunction<uint>* cell_domains,
const MeshFunction<uint>* exterior_facet_domains,
const MeshFunction<uint>* interior_facet_domains,
bool reset_tensor = true);
I meant
void assemble(GenericTensor& A,
const ufc::form& form,
const std::vector<FunctionSpace&> function_spaces,
const std::vector<Function&> coefficients,
const MeshFunction<uint>* cell_domains,
const MeshFunction<uint>* exterior_facet_domains,
const MeshFunction<uint>* interior_facet_domains,
bool reset_tensor = true);