modification of example step 23 of the deal.ii library