-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathindex.html
174 lines (163 loc) · 8.77 KB
/
index.html
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
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1" />
<link rel="stylesheet" type="text/css" href="grid.css">
<link rel="stylesheet" type="text/css" href="progress.css">
<script type="text/javascript" src="tab.js"></script>
<script type="text/javascript" src="Lib/three.js"></script>
<script type="text/javascript" src="Lib/numeric-1.2.6.js"></script>
<script type="text/javascript" src="Lib/OrbitControls.js"></script>
<script type="text/javascript" src="gui.js"></script>
<script type="text/javascript" src="atom.js"></script>
<script type="text/javascript" src="MO.js"></script>
<script type="text/javascript" src="wavefunction.js"></script>
<script type="text/javascript" src="occupation.js"></script>
<!-- <script type="text/javascript" src="init.js"></script>-->
</head>
<body>
<div class='wrapper'>
<div id='main'>
<div id='viewer'>
<canvas ondblclick="removeSurface();">
</canvas >
</div>
<div id='panel'>
<div id="upPanel">
<div class="activeButton" id="button1" onclick="thisTab(1);" onmouseover="status('Molecular geomtry')" onmouseout="status('')"></div>
<div class="inactiveButton" id="button2" onclick="thisTab(2);" onmouseover="status('Outputs')" onmouseout="status('')"></div>
<div class="inactiveButton" id="button3" onclick="thisTab(3);" onmouseover="status('Settings')" onmouseout="status('')"></div>
<div class="inactiveButton" id="button4" onclick="thisTab(4);" onmouseover="status('About')" onmouseout="status('')"></div>
</div>
<div id="lowPanel">
<div id="tab1">
<div id="input">
<label for="openfile" class="custom-file-upload" onmouseover="status('upload a .xyz file')" onmouseout="status('')">
<input type="file" id="openfile" />
upload .xyz
</label>
</div>
<div>
<textarea onclick="removeSelect();" onselect="showSelectedAtoms();" placeholder="H 1.0 1.0 1.0" id="xyzText" name="text" onkeyup="updateScreen();" onmouseover="status('write xyz coordinates')" onmouseout="status('')" onblur="noKey(false)" onfocus="noKey(true)"></textarea>
</div>
</div>
<div id="tab2">
<div id="controlResults">
<div id="blankRow4"></div>
<div></div>
<div>
<select id="resultType" onchange="resultType()">
<option value="E" selected>MO Energies</option>
<option value="V">MO Wavefunction</option>
</select>
</div>
<div id='moType'>
<select id="moNum" onchange="molNo();">
<option value="1" selected>--</option>
</select>
</div>
<div></div>
<div id="blankRow4"></div>
</div>
<div id="energyResults">
</br> Nothing to show here!
</br> Perform a calculation first.
</div>
<div id="orbitalResult">
</br> Nothing to show here!
</br> Perform a calculation first.
</div>
</div>
<div id="tab3">
<div class="column" id='left'></div>
<div></div>
<div>Molecular Charge : <input type="number" value="0" id="moleculeCharge"></div>
<div>Wolfsberg-Helmholtz constant (K): <input type="text" value="1.75" id="Kconstant"> </div>
<div> Resolution of orbitals:
<select id="resolution">
<option value="low" selected>low resolution</option>
<option value="medium"> medium resolution</option>
<option value="high"> high resolution</option>
<!-- <option value="veryhigh"> very high resolution</option>-->
</select>
</div>
<div>
How the orbitals look:
<select id="moStyle">
<option value="transparent" selected>transparent</option>
<option value="solid"> solid</option>
<option value="mesh"> mesh</option>
</select>
</div>
<div> Iso value for the orbitals: <input type="text" value="0.004" id="isovalue"> </div>
<!--
<div> Predict and Show bonds: <input type="checkbox" /> </div>
<div> Predict and Show Partial Charges: <input type="checkbox" /> </div>
-->
<div class="column" id='right'></div>
</div>
<div id="tab4">
</br> You are using the v1.0
</br> (launched Dec 15, 2019)
<!--<p>
<b>What is this?</b> </br>
This is an application that allows performing
electronic structure calculation n molecular
system based on semi-empirical extended huckel theory.
<b>What do I need to perform a calculation?</b> </p>-->
</div>
</div>
</div>
</div>
<div class="meter" id="progressbar"><span style="width: 0%" id="progress"></span></div>
<div id='affiliation'>
<div id='controls'>
<div id="StartButton" class='normalButton' onclick="Calculate();"> </div>
<div class='stopButton' onclick="stop();"> </div>
<div></div>
</div>
<div></div>
<div id="huoGroup" onclick="window.open('http://sas.rochester.edu/chm/groups/huo','mywindow');"></div>
<div id="UofR" onclick="window.open('http://rochester.edu','mywindow');"></div>
<!-- <div id="NSF" onclick="window.open('http://https://www.nsf.gov','mywindow');"></div>
<img src='huoGroup.png'/><img src='UofR.png'/> -->
</div>
<div id='footer'>
<div id='status'></div>
<div id='author'> Developped by <a href="https://github.com/arkajitmandal">@arkajitmandal</a> and <a href="https://github.com/shreifelsaid">@shreifelsaid</a>
</div>
<div id='github'>
<a id='githublink' href="https://github.com/arkajitmandal/ExtendedHuckel">
@github <!-- <img src='github.png'/>-->
</a>
</div>
</div>
</div>
<script type="text/javascript">
document.getElementById("openfile").addEventListener("change",
function() {
var fr = new FileReader();
fr.onload = function() {
filelines = this.result.split("\n");
for (var j = 0; j < filelines.length; j++) {
filelines[j] = filelines[j].replace(/ +/g, ' ');
//console.log(filelines)
}
let N = parseInt(filelines[0])
let xyzText = filelines.slice(2, 2 + N).join("\n");
document.getElementById("xyzText").value = xyzText;
try {
removeAtoms();
removeDensity();
} catch (err) {
console.log("Error Happend!")
}
showatoms();
document.getElementById("StartButton").className = "normalButton";
//try{showatoms();}catch(err){}
}
fr.readAsText(this.files[0]);
}
)
</script>
</body>
</html>