Eigene Geometrie-Transformation
Da ihr eure eigene Gitterdatenstruktur baut, werdet Ihr im lokalen Operator (nonlinearpoissonfem.hh
) auch eure eigene Geometrietransformation brauchen. dune-geometry bietet eine MultilinearGeometry
, die bei entsprechender Wahl der Storage für die Koordinaten später GPU-fähig sein sollte.
In diesem Task soll erstmal nur die MultilinearGeometry
im lokalen Operator verwendet werden.
Im lokalen Operator, in der Methode jacobian_apply_volume()
sollen die Eckenkoordinaten aus dem Geometrieobject des nativen Dune-Gitters extrahiert werden und damit eine MultiLinearGeometry
aufgebaut werden, die dann im rest von jacobian_apply_volume()
verwendet wird. Dabei kann erstmal die (nicht GPU-fähige) default-Storage der MultiLinearGeometry verwendet werden (ein std::vector<FieldVector<ct, dimension> >
oder so ähnlich).