> I apologise if the question's too simplistic, but does this give the > correct behaviour: > > MatrixCreator::create_mass_matrix (dof_handler, QGauss<dim>(3), > mass_matrix); > > MatrixCreator::create_laplace_matrix (dof_handler, QGauss<dim>(3), > laplace_matrix); > > > system_matrix.copy_from (mass_matrix); > > system_matrix.add (theta * time_step * tensor_coefficient, > laplace_matrix);
This isn't going to work: you can't multiply a matrix after assembly by a coefficient unless the coefficient is scalar and constant throughout the domain. The equivalent function to create_*_matrix you are looking for for tensor coefficients does not currently exist. You can either take the existing functions and create versions that do what you, or you can simply adjust the assembly functions from step-6 to include a tensor valued coefficient. The latter is probably the simpler avenue, the former would yield a function that could be integrated into the library if you wanted. Best W. ------------------------------------------------------------------------- Wolfgang Bangerth email: [email protected] www: http://www.math.tamu.edu/~bangerth/ _______________________________________________ dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii
