forked from martinsaip/SC-EMA
-
Notifications
You must be signed in to change notification settings - Fork 0
/
1phase.py
82 lines (67 loc) · 3.33 KB
/
1phase.py
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
#__author__ = 'Aydin & Titrian'
import sys
import os
import tempfile
import time
os.environ['MPLCONFIGDIR'] = tempfile.mkdtemp()
from tools.gibbs_plot import plotYoungsModulus
from polycrystal import cubic
from polycrystal import tetragonal
from polycrystal import trigonal
from polycrystal import hexagonal
from polycrystal import orthorombic
import numpy as np
our_string = sys.argv[1]
currentUserID = str(sys.argv[2])
#myarray = our_string.split()
#high = int(myarray.pop())
#low = int(myarray.pop())
#tmpFolder = str(myarray.pop())
#pnts = int(myarray.pop())
#strStruc = ''.join(myarray)
#myIP = tmpFolder.split(".")[0]
#print myIP
#myid = tmpFolder.split(".")[-1]
#1. read the log-file
#try:
# f = open("../public/logfile.txt",'r+')
#except IOError, e:
# print e
#
#readList = f.read()
#
#if len(readList) != 0:
# userIDs = []
# userTime = []
# readList = readList.split()
# for k in len(readList):
# if currentUserID in userIDS:
# print "yayy found"
#else:
# f.write('{0:s} {1:s}\n'.format(currentUserID, str(1)))
#
#f.close()
f = open("../public/logfile","a")
my_crystal = eval(our_string)
my_crystal.setK0andMue0()
my_crystal.setYoungsMod()
my_crystal.setpoissonratio()
my_crystal.areamoduli()
myDict = my_crystal.getElasticDict()
#plotYoungsModulus(my_crystal.crystalname, myDict, saveFig= "True" )
crystalname = my_crystal.crystalname
print("Based on input elastic constants, the mechanical stability of your system was checked and the system was found stable (for detail see the "about" page)." + '<br>')
print("The OUTPUT homogenized polycrystalline BULK MODULUS ="+ '<br>','%.2f' % (my_crystal.K0 * 100) + ' (GPa) ' + '<br>')
print("The OUTPUT homogenized polycrystalline SHEAR MODULUS ="+ '<br>','%.2f' % (my_crystal.mue0 * 100) + ' (GPa) ' + '<br>')
print("The OUTPUT homogenized polycrystalline YOUNG'S MODULUS = "+ '<br>','%.2f' % (my_crystal.E * 100) + ' (GPa) ' + '<br>')
print("The OUTPUT homogenized polycrystalline POISSON RATIO = "+ '<br>','%.4f' % (my_crystal.v) + '<br>')
print("If using the REUSS homogenization method, the OUTPUT homogenized polycrystalline BULK MODULUS = "+ '<br>','%.2f' % (my_crystal.reuss_bulk * 100) + ' (GPa) ' + '<br>')
print("If using the VOIGT homogenization method, the OUTPUT homogenized polycrystalline BULK MODULUS = "+ '<br>','%.2f' % (my_crystal.voigt_bulk * 100) + ' (GPa) ' + '<br>')
print("If using the REUSS homogenization method, the OUTPUT homogenized polycrystalline SHEAR MODULUS = "+ '<br>','%.2f' % (my_crystal.reuss_shear * 100) + ' (GPa) ' + '<br>')
print("If using the VOIGT homogenization method, the OUTPUT homogenized polycrystalline SHEAR MODULUS = "+ '<br>','%.2f' % (my_crystal.voigt_shear * 100) + ' (GPa) ' + '<br>')
if crystalname == 'cubic':
print("Specifically for cubic SINGLE CRYSTALS, the AREA MODUL OF ELASTICITY for the (001) plane is A(001) = "+ '<br>','%.2f' % (my_crystal.A1 * 100) + ' (GPa) ' + '<br>')
print("Specifically for cubic SINGLE CRYSTALS, the AREA MODUL OF ELASTICITY for the (110) plane is A(110) = "+ '<br>','%.2f' % (my_crystal.A2 * 100) + ' (GPa) ' + '<br>')
print("Specifically for cubic SINGLE CRYSTALS, the AREA MODUL OF ELASTICITY for the (111) plane is A(111) = "+ '<br>','%.2f' % (my_crystal.A3 * 100) + ' (GPa) ' + '<br>')
f.write("someone used the run button\n")
f.close()