297 lines
12 KiB
C++
297 lines
12 KiB
C++
|
|
|
|
// This file is part of the Herezh++ application.
|
|
//
|
|
// The finite element software Herezh++ is dedicated to the field
|
|
// of mechanics for large transformations of solid structures.
|
|
// It is developed by Gérard Rio (APP: IDDN.FR.010.0106078.000.R.P.2006.035.20600)
|
|
// INSTITUT DE RECHERCHE DUPUY DE LÔME (IRDL) <https://www.irdl.fr/>.
|
|
//
|
|
// Herezh++ is distributed under GPL 3 license ou ultérieure.
|
|
//
|
|
// Copyright (C) 1997-2022 Université Bretagne Sud (France)
|
|
// AUTHOR : Gérard Rio
|
|
// E-MAIL : gerardrio56@free.fr
|
|
//
|
|
// This program is free software: you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation, either version 3 of the License,
|
|
// or (at your option) any later version.
|
|
//
|
|
// This program is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty
|
|
// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
// See the GNU General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU General Public License
|
|
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
//
|
|
// For more information, please consult: <https://herezh.irdl.fr/>.
|
|
|
|
#include "GeomHexalin.h"
|
|
|
|
void GeomHexalin::Phiphi()
|
|
{ // fonctions d'interpolation globales
|
|
PHI(6,7) = 0.1314458557658023;
|
|
PHI(1,5) = 0.3522081090086454E-1;
|
|
PHI(4,5) = 0.1314458557658023;
|
|
PHI(4,7) = 0.3522081090086454E-1;
|
|
PHI(3,2) = 0.4905626121623443;
|
|
PHI(7,6) = 0.3522081090086454E-1;
|
|
PHI(2,4) = 0.4905626121623443;
|
|
PHI(4,3) = 0.9437387837655943E-2;
|
|
PHI(5,5) = 0.1314458557658023;
|
|
PHI(3,6) = 0.1314458557658023;
|
|
PHI(2,8) = 0.1314458557658023;
|
|
PHI(7,7) = 0.3522081090086454E-1;
|
|
PHI(1,2) = 0.3522081090086454E-1;
|
|
PHI(8,4) = 0.9437387837655943E-2;
|
|
PHI(2,1) = 0.3522081090086454E-1;
|
|
PHI(4,2) = 0.1314458557658023;
|
|
PHI(1,6) = 0.1314458557658023;
|
|
PHI(3,3) = 0.3522081090086454E-1;
|
|
PHI(3,7) = 0.9437387837655943E-2;
|
|
PHI(6,5) = 0.3522081090086454E-1;
|
|
PHI(5,3) = 0.1314458557658023;
|
|
PHI(8,5) = 0.4905626121623443;
|
|
PHI(6,8) = 0.3522081090086454E-1;
|
|
PHI(4,6) = 0.4905626121623443;
|
|
PHI(8,6) = 0.1314458557658023;
|
|
PHI(1,1) = 0.9437387837655943E-2;
|
|
PHI(2,5) = 0.9437387837655943E-2;
|
|
PHI(6,4) = 0.1314458557658023;
|
|
PHI(6,6) = 0.9437387837655943E-2;
|
|
PHI(3,4) = 0.1314458557658023;
|
|
PHI(7,4) = 0.3522081090086454E-1;
|
|
PHI(4,8) = 0.1314458557658023;
|
|
PHI(1,3) = 0.3522081090086454E-1;
|
|
PHI(1,7) = 0.1314458557658023;
|
|
PHI(8,8) = 0.3522081090086454E-1;
|
|
PHI(3,8) = 0.3522081090086454E-1;
|
|
PHI(5,6) = 0.3522081090086454E-1;
|
|
PHI(2,2) = 0.1314458557658023;
|
|
PHI(8,2) = 0.3522081090086454E-1;
|
|
PHI(8,3) = 0.3522081090086454E-1;
|
|
PHI(5,8) = 0.1314458557658023;
|
|
PHI(2,6) = 0.3522081090086454E-1;
|
|
PHI(8,7) = 0.1314458557658023;
|
|
PHI(4,1) = 0.3522081090086454E-1;
|
|
PHI(1,8) = 0.4905626121623443;
|
|
PHI(5,2) = 0.9437387837655943E-2;
|
|
PHI(6,2) = 0.3522081090086454E-1;
|
|
PHI(7,2) = 0.1314458557658023;
|
|
PHI(3,1) = 0.1314458557658023;
|
|
PHI(5,7) = 0.4905626121623443;
|
|
PHI(7,1) = 0.4905626121623443;
|
|
PHI(5,4) = 0.3522081090086454E-1;
|
|
PHI(7,5) = 0.1314458557658023;
|
|
PHI(7,8) = 0.9437387837655943E-2;
|
|
PHI(7,3) = 0.1314458557658023;
|
|
PHI(1,4) = 0.1314458557658023;
|
|
PHI(6,1) = 0.1314458557658023;
|
|
PHI(4,4) = 0.3522081090086454E-1;
|
|
PHI(8,1) = 0.1314458557658023;
|
|
PHI(5,1) = 0.3522081090086454E-1;
|
|
PHI(6,3) = 0.4905626121623443;
|
|
PHI(3,5) = 0.3522081090086454E-1;
|
|
PHI(2,3) = 0.1314458557658023;
|
|
PHI(2,7) = 0.3522081090086454E-1;
|
|
};
|
|
|
|
void GeomHexalin::DphiDphi()
|
|
{ // derivees des fonctions d'interpolations
|
|
DPHI(3,3,5) = -0.8333333333333338E-1;
|
|
DPHI(2,3,2) = 0.3110042339640733;
|
|
DPHI(2,7,3) = 0.3110042339640733;
|
|
DPHI(3,7,4) = 0.8333333333333338E-1;
|
|
DPHI(1,5,4) = -0.8333333333333338E-1;
|
|
DPHI(2,8,6) = 0.8333333333333338E-1;
|
|
DPHI(3,2,3) = -0.3110042339640733;
|
|
DPHI(2,4,6) = 0.3110042339640733;
|
|
DPHI(3,6,1) = 0.8333333333333338E-1;
|
|
DPHI(3,2,7) = -0.8333333333333338E-1;
|
|
DPHI(1,5,1) = -0.8333333333333338E-1;
|
|
DPHI(1,8,3) = -0.8333333333333338E-1;
|
|
DPHI(1,1,7) = -0.8333333333333338E-1;
|
|
DPHI(3,6,7) = 0.8333333333333338E-1;
|
|
DPHI(1,6,3) = 0.3110042339640733;
|
|
DPHI(3,3,1) = -0.3110042339640733;
|
|
DPHI(3,3,6) = -0.8333333333333338E-1;
|
|
DPHI(2,1,2) = -0.8333333333333338E-1;
|
|
DPHI(3,6,6) = 0.2232909936926024E-1;
|
|
DPHI(3,4,2) = -0.8333333333333338E-1;
|
|
DPHI(3,8,4) = 0.2232909936926024E-1;
|
|
DPHI(3,4,8) = -0.8333333333333338E-1;
|
|
DPHI(2,4,1) = 0.2232909936926024E-1;
|
|
DPHI(2,5,7) = -0.3110042339640733;
|
|
DPHI(1,2,2) = 0.8333333333333338E-1;
|
|
DPHI(3,8,8) = 0.8333333333333338E-1;
|
|
DPHI(1,1,6) = -0.8333333333333338E-1;
|
|
DPHI(2,5,6) = -0.8333333333333338E-1;
|
|
DPHI(3,7,1) = 0.3110042339640733;
|
|
DPHI(2,7,6) = 0.2232909936926024E-1;
|
|
DPHI(3,3,7) = -0.2232909936926024E-1;
|
|
DPHI(1,7,5) = 0.3110042339640733;
|
|
DPHI(2,6,8) = -0.2232909936926024E-1;
|
|
DPHI(2,4,3) = 0.2232909936926024E-1;
|
|
DPHI(2,6,5) = -0.8333333333333338E-1;
|
|
DPHI(1,7,3) = 0.8333333333333338E-1;
|
|
DPHI(2,7,4) = 0.8333333333333338E-1;
|
|
DPHI(1,8,6) = -0.8333333333333338E-1;
|
|
DPHI(2,2,3) = -0.8333333333333338E-1;
|
|
DPHI(3,1,1) = -0.2232909936926024E-1;
|
|
DPHI(2,5,3) = -0.8333333333333338E-1;
|
|
DPHI(3,2,8) = -0.8333333333333338E-1;
|
|
DPHI(3,5,2) = 0.2232909936926024E-1;
|
|
DPHI(1,6,6) = 0.2232909936926024E-1;
|
|
DPHI(3,1,4) = -0.8333333333333338E-1;
|
|
DPHI(1,8,4) = -0.2232909936926024E-1;
|
|
DPHI(2,6,7) = -0.8333333333333338E-1;
|
|
DPHI(1,3,3) = 0.2232909936926024E-1;
|
|
DPHI(3,4,5) = -0.3110042339640733;
|
|
DPHI(2,3,1) = 0.8333333333333338E-1;
|
|
DPHI(1,7,1) = 0.3110042339640733;
|
|
DPHI(2,2,5) = -0.2232909936926024E-1;
|
|
DPHI(1,3,7) = 0.2232909936926024E-1;
|
|
DPHI(3,7,2) = 0.3110042339640733;
|
|
DPHI(3,2,4) = -0.3110042339640733;
|
|
DPHI(2,3,6) = 0.8333333333333338E-1;
|
|
DPHI(2,2,4) = -0.3110042339640733;
|
|
DPHI(1,1,2) = -0.8333333333333338E-1;
|
|
DPHI(2,1,8) = -0.3110042339640733;
|
|
DPHI(2,4,2) = 0.8333333333333338E-1;
|
|
DPHI(3,5,4) = 0.8333333333333338E-1;
|
|
DPHI(2,5,5) = -0.3110042339640733;
|
|
DPHI(1,4,1) = -0.8333333333333338E-1;
|
|
DPHI(1,7,2) = 0.8333333333333338E-1;
|
|
DPHI(2,8,2) = 0.2232909936926024E-1;
|
|
DPHI(2,3,4) = 0.3110042339640733;
|
|
DPHI(3,5,8) = 0.3110042339640733;
|
|
DPHI(2,8,8) = 0.8333333333333338E-1;
|
|
DPHI(1,1,1) = -0.2232909936926024E-1;
|
|
DPHI(3,7,7) = 0.2232909936926024E-1;
|
|
DPHI(1,7,6) = 0.8333333333333338E-1;
|
|
DPHI(1,5,2) = -0.2232909936926024E-1;
|
|
DPHI(1,1,5) = -0.2232909936926024E-1;
|
|
DPHI(1,6,8) = 0.8333333333333338E-1;
|
|
DPHI(1,1,3) = -0.8333333333333338E-1;
|
|
DPHI(3,2,2) = -0.8333333333333338E-1;
|
|
DPHI(1,6,5) = 0.8333333333333338E-1;
|
|
DPHI(1,8,1) = -0.3110042339640733;
|
|
DPHI(1,4,7) = -0.2232909936926024E-1;
|
|
DPHI(1,2,3) = 0.8333333333333338E-1;
|
|
DPHI(2,2,8) = -0.8333333333333338E-1;
|
|
DPHI(1,4,4) = -0.8333333333333338E-1;
|
|
DPHI(2,1,4) = -0.8333333333333338E-1;
|
|
DPHI(1,8,7) = -0.8333333333333338E-1;
|
|
DPHI(1,2,1) = 0.2232909936926024E-1;
|
|
DPHI(3,1,6) = -0.8333333333333338E-1;
|
|
DPHI(2,4,5) = 0.8333333333333338E-1;
|
|
DPHI(1,3,1) = 0.8333333333333338E-1;
|
|
DPHI(1,6,2) = 0.2232909936926024E-1;
|
|
DPHI(3,7,5) = 0.8333333333333338E-1;
|
|
DPHI(2,7,2) = 0.8333333333333338E-1;
|
|
DPHI(1,2,4) = 0.3110042339640733;
|
|
DPHI(3,3,2) = -0.3110042339640733;
|
|
DPHI(3,7,3) = 0.8333333333333338E-1;
|
|
DPHI(1,5,5) = -0.8333333333333338E-1;
|
|
DPHI(3,8,5) = 0.3110042339640733;
|
|
DPHI(1,8,2) = -0.8333333333333338E-1;
|
|
DPHI(1,3,4) = 0.8333333333333338E-1;
|
|
DPHI(3,6,4) = 0.3110042339640733;
|
|
DPHI(2,7,7) = 0.8333333333333338E-1;
|
|
DPHI(3,4,6) = -0.3110042339640733;
|
|
DPHI(3,3,3) = -0.8333333333333338E-1;
|
|
DPHI(3,2,5) = -0.2232909936926024E-1;
|
|
DPHI(2,6,3) = -0.3110042339640733;
|
|
DPHI(3,4,7) = -0.8333333333333338E-1;
|
|
DPHI(2,5,8) = -0.8333333333333338E-1;
|
|
DPHI(3,1,3) = -0.8333333333333338E-1;
|
|
DPHI(2,3,5) = 0.2232909936926024E-1;
|
|
DPHI(3,5,1) = 0.2232909936926024E-1;
|
|
DPHI(1,3,2) = 0.3110042339640733;
|
|
DPHI(3,1,7) = -0.3110042339640733;
|
|
DPHI(3,4,1) = -0.8333333333333338E-1;
|
|
DPHI(3,5,7) = 0.3110042339640733;
|
|
DPHI(1,4,5) = -0.8333333333333338E-1;
|
|
DPHI(1,4,6) = -0.3110042339640733;
|
|
DPHI(3,7,6) = 0.8333333333333338E-1;
|
|
DPHI(2,6,1) = -0.3110042339640733;
|
|
DPHI(3,1,5) = -0.8333333333333338E-1;
|
|
DPHI(2,7,5) = 0.8333333333333338E-1;
|
|
DPHI(2,2,7) = -0.2232909936926024E-1;
|
|
DPHI(3,2,6) = -0.2232909936926024E-1;
|
|
DPHI(3,6,8) = 0.8333333333333338E-1;
|
|
DPHI(3,4,3) = -0.2232909936926024E-1;
|
|
DPHI(3,8,7) = 0.8333333333333338E-1;
|
|
DPHI(3,3,8) = -0.2232909936926024E-1;
|
|
DPHI(3,8,1) = 0.8333333333333338E-1;
|
|
DPHI(1,8,5) = -0.3110042339640733;
|
|
DPHI(3,8,3) = 0.2232909936926024E-1;
|
|
DPHI(2,6,4) = -0.8333333333333338E-1;
|
|
DPHI(3,7,8) = 0.2232909936926024E-1;
|
|
DPHI(2,1,3) = -0.2232909936926024E-1;
|
|
DPHI(1,7,7) = 0.8333333333333338E-1;
|
|
DPHI(2,6,6) = -0.2232909936926024E-1;
|
|
DPHI(2,8,4) = 0.2232909936926024E-1;
|
|
DPHI(2,4,8) = 0.3110042339640733;
|
|
DPHI(1,5,7) = -0.3110042339640733;
|
|
DPHI(2,7,8) = 0.2232909936926024E-1;
|
|
DPHI(2,3,3) = 0.8333333333333338E-1;
|
|
DPHI(1,5,6) = -0.2232909936926024E-1;
|
|
DPHI(2,7,1) = 0.3110042339640733;
|
|
DPHI(3,6,2) = 0.8333333333333338E-1;
|
|
DPHI(2,3,7) = 0.2232909936926024E-1;
|
|
DPHI(1,5,8) = -0.8333333333333338E-1;
|
|
DPHI(1,4,3) = -0.2232909936926024E-1;
|
|
DPHI(1,3,5) = 0.8333333333333338E-1;
|
|
DPHI(3,1,8) = -0.3110042339640733;
|
|
DPHI(2,5,1) = -0.8333333333333338E-1;
|
|
DPHI(2,1,7) = -0.8333333333333338E-1;
|
|
DPHI(1,7,4) = 0.2232909936926024E-1;
|
|
DPHI(3,8,2) = 0.8333333333333338E-1;
|
|
DPHI(3,3,4) = -0.8333333333333338E-1;
|
|
DPHI(3,5,5) = 0.8333333333333338E-1;
|
|
DPHI(2,1,1) = -0.2232909936926024E-1;
|
|
DPHI(1,5,3) = -0.3110042339640733;
|
|
DPHI(1,6,1) = 0.8333333333333338E-1;
|
|
DPHI(2,5,2) = -0.2232909936926024E-1;
|
|
DPHI(2,1,5) = -0.8333333333333338E-1;
|
|
DPHI(1,2,7) = 0.8333333333333338E-1;
|
|
DPHI(2,2,6) = -0.8333333333333338E-1;
|
|
DPHI(1,6,7) = 0.3110042339640733;
|
|
DPHI(2,3,8) = 0.8333333333333338E-1;
|
|
DPHI(2,8,1) = 0.8333333333333338E-1;
|
|
DPHI(3,4,4) = -0.2232909936926024E-1;
|
|
DPHI(2,4,7) = 0.8333333333333338E-1;
|
|
DPHI(1,2,5) = 0.2232909936926024E-1;
|
|
DPHI(1,3,6) = 0.3110042339640733;
|
|
DPHI(2,8,5) = 0.3110042339640733;
|
|
DPHI(1,6,4) = 0.8333333333333338E-1;
|
|
DPHI(1,7,8) = 0.2232909936926024E-1;
|
|
DPHI(3,2,1) = -0.8333333333333338E-1;
|
|
DPHI(1,1,8) = -0.3110042339640733;
|
|
DPHI(1,4,2) = -0.3110042339640733;
|
|
DPHI(2,8,7) = 0.3110042339640733;
|
|
DPHI(1,4,8) = -0.8333333333333338E-1;
|
|
DPHI(2,5,4) = -0.2232909936926024E-1;
|
|
DPHI(3,8,6) = 0.3110042339640733;
|
|
DPHI(2,2,1) = -0.8333333333333338E-1;
|
|
DPHI(1,8,8) = -0.2232909936926024E-1;
|
|
DPHI(3,5,3) = 0.8333333333333338E-1;
|
|
DPHI(2,6,2) = -0.8333333333333338E-1;
|
|
DPHI(2,8,3) = 0.8333333333333338E-1;
|
|
DPHI(1,2,6) = 0.8333333333333338E-1;
|
|
DPHI(2,2,2) = -0.3110042339640733;
|
|
DPHI(3,1,2) = -0.2232909936926024E-1;
|
|
DPHI(1,2,8) = 0.3110042339640733;
|
|
DPHI(3,6,5) = 0.2232909936926024E-1;
|
|
DPHI(1,1,4) = -0.3110042339640733;
|
|
DPHI(3,6,3) = 0.3110042339640733;
|
|
DPHI(2,1,6) = -0.3110042339640733;
|
|
DPHI(1,3,8) = 0.8333333333333338E-1;
|
|
DPHI(3,5,6) = 0.8333333333333338E-1;
|
|
DPHI(2,4,4) = 0.8333333333333338E-1;
|
|
|
|
};
|
|
|