1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146
|
########################################################
#
# Copyright (c) 2003-2018 by The University of Queensland
# Earth Systems Science Computational Center (ESSCC)
# http://www.uq.edu.au
#
# Primary Business: Queensland, Australia
# Licensed under the Apache License, version 2.0
# http://www.apache.org/licenses/LICENSE-2.0
#
########################################################
from __future__ import print_function, division
__copyright__="""Copyright (c) 2003-2018 by The University of Queensland
Earth Systems Science Computational Center (ESSCC)
http://www.uq.edu.au
Primary Business: Queensland, Australia"""
__license__="""Licensed under the Apache License, version 2.0
http://www.apache.org/licenses/LICENSE-2.0"""
__url__="https://launchpad.net/escript-finley"
"""
Test suite for the linearPDE and pdetools test on finley
:remark:
:var __author__: name of author
:var __licence__: licence agreement
:var __url__: url entry point on documentation
:var __version__: version
:var __date__: date of the version
"""
__author__="Lutz Gross, l.gross@uq.edu.au"
import os
import esys.escriptcore.utestselect as unittest
from esys.escriptcore.testing import *
from test_linearPDEs import Test_Helmholtz, Test_LameEquation, Test_Poisson
from test_assemblage import Test_assemblage_2Do1_Contact, Test_assemblage_2Do2_Contact, Test_assemblage_3Do1_Contact, Test_assemblage_3Do2_Contact
from esys.finley import Rectangle, ReadMesh
try:
FINLEY_TEST_DATA=os.environ['FINLEY_TEST_DATA']
except KeyError:
FINLEY_TEST_DATA='.'
FINLEY_TEST_MESH_PATH=os.path.join(FINLEY_TEST_DATA,"data_meshes")
NE=8 # number of element in each spatial direction (must be even)
class Test_LameOnFinley(Test_LameEquation):
RES_TOL=1.e-7
ABS_TOL=1.e-8
def setUp(self):
self.domain = Rectangle(NE, NE, 2, useElementsOnFace=0, useFullElementOrder=True)
def tearDown(self):
del self.domain
class Test_PoissonOnFinley(Test_Poisson):
RES_TOL=1.e-7
ABS_TOL=1.e-8
def setUp(self):
self.domain = Rectangle(NE, NE, 2, useElementsOnFace=0, useFullElementOrder=True)
def tearDown(self):
del self.domain
class Test_HelmholtzOnFinley(Test_Helmholtz):
RES_TOL=1.e-7
ABS_TOL=1.e-8
def setUp(self):
self.domain = Rectangle(NE, NE, 2, useElementsOnFace=0, useFullElementOrder=True)
def tearDown(self):
del self.domain
class Test_AssemblePDEwithFinley_2Do1_Contact(Test_assemblage_2Do1_Contact):
RES_TOL=1.e-7
ABS_TOL=1.e-8
def setUp(self):
self.domain = ReadMesh(os.path.join(FINLEY_TEST_MESH_PATH,"mesh_2Do1_Contact.fly"))
def tearDown(self):
del self.domain
class Test_AssemblePDEwithFinley_2Do2_Contact(Test_assemblage_2Do2_Contact):
RES_TOL=1.e-7
ABS_TOL=1.e-8
def setUp(self):
self.domain = ReadMesh(os.path.join(FINLEY_TEST_MESH_PATH,"mesh_2Do2_Contact.fly"))
def tearDown(self):
del self.domain
class Test_AssemblePDEwithFinley_3Do1_Contact(Test_assemblage_3Do1_Contact):
RES_TOL=1.e-7
ABS_TOL=1.e-8
def setUp(self):
self.domain = ReadMesh(os.path.join(FINLEY_TEST_MESH_PATH,"mesh_3Do1_Contact.fly"))
def tearDown(self):
del self.domain
class Test_AssemblePDEwithFinley_3Do2_Contact(Test_assemblage_3Do2_Contact):
RES_TOL=1.e-7
ABS_TOL=1.e-8
def setUp(self):
self.domain = ReadMesh(os.path.join(FINLEY_TEST_MESH_PATH,"mesh_3Do2_Contact.fly"))
def tearDown(self):
del self.domain
class Test_AssemblePDEwithFinley_2Do1_Contact_withElementsOnFace(Test_assemblage_2Do1_Contact):
RES_TOL=1.e-7
ABS_TOL=1.e-8
def setUp(self):
self.domain = ReadMesh(os.path.join(FINLEY_TEST_MESH_PATH,"mesh_2Do1_Contact_withElementsOnFace.fly"))
def tearDown(self):
del self.domain
class Test_AssemblePDEwithFinley_2Do2_Contact_withElementsOnFace(Test_assemblage_2Do2_Contact):
RES_TOL=1.e-7
ABS_TOL=1.e-8
def setUp(self):
self.domain = ReadMesh(os.path.join(FINLEY_TEST_MESH_PATH,"mesh_2Do2_Contact_withElementsOnFace.fly"))
def tearDown(self):
del self.domain
class Test_AssemblePDEwithFinley_3Do1_Contact_withElementsOnFace(Test_assemblage_3Do1_Contact):
RES_TOL=1.e-7
ABS_TOL=1.e-8
def setUp(self):
self.domain = ReadMesh(os.path.join(FINLEY_TEST_MESH_PATH,"mesh_3Do1_Contact_withElementsOnFace.fly"))
def tearDown(self):
del self.domain
class Test_AssemblePDEwithFinley_3Do2_Contact_withElementsOnFace(Test_assemblage_3Do2_Contact):
RES_TOL=1.e-7
ABS_TOL=1.e-8
def setUp(self):
self.domain = ReadMesh(os.path.join(FINLEY_TEST_MESH_PATH,"mesh_3Do2_Contact_withElementsOnFace.fly"))
def tearDown(self):
del self.domain
if __name__ == '__main__':
run_tests(__name__, exit_on_failure=True)
|