MCPcopy Create free account
hub / github.com/NGSolve/ngsolve / CompoundFESpaceAllSame

Method CompoundFESpaceAllSame

comp/fespace.cpp:3993–4021  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3991
3992
3993 CompoundFESpaceAllSame ::
3994 CompoundFESpaceAllSame (shared_ptr<FESpace> space, int dim, const Flags & flags,
3995 bool checkflags)
3996 : CompoundFESpace (space->GetMeshAccess(), flags)
3997 {
3998 order = space->GetOrder();
3999 for (int i = 0; i < dim; i++)
4000 AddSpace (space);
4001
4002 // interleaved: not yet implemented, will copy from VectorH1
4003 interleaved = flags.GetDefineFlag("interleaved");
4004 if (interleaved)
4005 throw Exception("CompoundFESpaceAllSame: Interleaved not yet supported");
4006
4007 for (auto vb : { VOL, BND, BBND, BBBND })
4008 {
4009 if (auto eval = spaces[0] -> GetEvaluator(vb))
4010 evaluator[vb] = make_shared<VectorDifferentialOperator> (eval, dim);
4011 if (auto fluxeval = spaces[0] -> GetFluxEvaluator(vb))
4012 flux_evaluator[vb] = make_shared<VectorDifferentialOperator> (fluxeval, dim);
4013 }
4014
4015 auto additional = spaces[0]->GetAdditionalEvaluators();
4016 for (int i = 0; i < additional.Size(); i++)
4017 additional_evaluators.Set (additional.GetName(i),
4018 make_shared<VectorDifferentialOperator>(additional[i], dim));
4019
4020 type = "Vector"+(*this)[0]->type;
4021 }
4022
4023 string CompoundFESpaceAllSame :: GetClassName () const
4024 {

Callers

nothing calls this directly

Calls 6

GetMeshAccessMethod · 0.80
GetOrderMethod · 0.45
SizeMethod · 0.45
SetMethod · 0.45
GetNameMethod · 0.45

Tested by

no test coverage detected