t7morgen commited on
Commit
d5bad3a
1 Parent(s): 2382dff
Files changed (2) hide show
  1. app.py +5 -49
  2. dummy_struct_dens.cub +0 -0
app.py CHANGED
@@ -174,7 +174,7 @@ def plot_thermo(thermo_data):
174
  #ax1.legend(loc='lower right')
175
  return fig
176
 
177
- def predict(input_file):
178
  input_f = open(input_file.name, "r").read()
179
  input_format = input_file.name.split('.')[-1]
180
 
@@ -182,69 +182,28 @@ def predict(input_file):
182
  oF.write(input_f)
183
 
184
  input_f2 = open('dummy_struct.'+input_format, "r").read()
185
- gfn2_input = ["filename","geom=dummy_struct."+input_format, 'calcdens=1', 'thermo=1']
186
  gfn2_output = run_gfn2(gfn2_input)
187
- print(gfn2_output['fetchthermo'].keys())
188
 
189
- #qm_mol_features = get_qm_mol_features(gfn2_output, checked_features)
190
- #basic_visualization_html = get_basic_visualization(input_f,input_format)
191
  feature_visualization_html = get_feature_visualization(input_f2,input_format, gfn2_output, gfn2_output['xyz'])
192
  qm_atom_features = get_qm_atom_features(gfn2_output)
193
  thermo_data = get_thermo_data(gfn2_output)
194
  plot = plot_thermo(thermo_data)
195
- #pd.DataFrame(thermo_data)
196
- return feature_visualization_html, pd.DataFrame(qm_atom_features), pd.DataFrame(thermo_data), plot#, pd.DataFrame(thermo_data)#, pd.DataFrame(qm_mol_features, index=[0])
197
-
198
-
199
- def line_plot_fn(input_exe):
200
- #input_f = open(input_file.name, "r").read()
201
- #input_format = input_file.name.split('.')[-1]
202
- #
203
- #with open('dummy_struct.'+input_format, "w") as oF:
204
- # oF.write(input_f)
205
-
206
- #input_f2 = open('dummy_struct.'+input_format, "r").read()
207
- gfn2_input = ["filename",input_exe, 'thermo=1']
208
- gfn2_output = run_gfn2(gfn2_input)
209
- print(gfn2_output['fetchthermo'].keys())
210
-
211
- #qm_mol_features = get_qm_mol_features(gfn2_output, checked_features)
212
- #basic_visualization_html = get_basic_visualization(input_f,input_format)
213
- #feature_visualization_html = get_feature_visualization(input_f2,input_format, gfn2_output, gfn2_output['xyz'])
214
- #qm_atom_features = get_qm_atom_features(gfn2_output)
215
- thermo_data = get_thermo_data(gfn2_output)
216
- pd.DataFrame(thermo_data)
217
- return pd.DataFrame(thermo_data)#, pd.DataFrame(qm_mol_features, index=[0])
218
-
219
 
 
220
 
221
- #def get_plot_data(input_format):
222
- # gfn2_input = ["filename","geom=dummy_struct."+input_format, 'thermo=1']
223
- # gfn2_output = run_gfn2(gfn2_input)
224
- # print('plot data output', gfn2_output)
225
 
226
  with gr.Blocks() as demo:
227
  gr.Markdown("# QM property calculation")
228
-
229
- #text_input = gr.Textbox()
230
- #text_output = gr.Textbox()
231
- #text_button = gr.Button("Flip")
232
-
233
-
234
-
235
  with gr.Row():
236
  input_file = gr.File(label="Structure file for input (xyz format)")
237
  input_file2 = input_file
238
  charge = gr.Textbox(placeholder="Total charge", label="Give the total charge of the input molecule. (Default=0)")
239
 
240
- #checked_features = gr.CheckboxGroup(["Charge", "Polarizability", "Koopman IP", "Electronic Density"], label="QM features", info="Which features shall be calculated?")
241
- #temperature = gr.Slider(value=300,minimum=0, maximum=1000, label="Temperature for Thermodynamics evaluation in K", step=5)
242
-
243
  single_btn = gr.Button(label="Run")
244
  with gr.Row():
245
  basic_html = gr.HTML()
246
  plot = gr.Plot()
247
- #gr.LinePlot(get_plot_data(input_format), every=5, x="Date", y="Sales", y_title="Sales ($ millions)", overlay_point=True, width=500, height=500)
248
  gr.HighlightedText(value=[("Positive Charge","Purple"),("Negative charge","red"),("Polarizability","Light blue"), ("Electronic Densities", "Beige")], color_map={"red":"#a0210f", "Light blue":"#809BAC", "Purple":"#4c4e9e", "Beige":"#F7D7BE"})
249
 
250
  with gr.Row():
@@ -257,13 +216,10 @@ with gr.Blocks() as demo:
257
  df_atom_features = gr.Dataframe()
258
  df_thermo_props = gr.Dataframe()
259
 
260
- #with gr.Row():
261
- # plot = gr.Plot()
262
 
263
- single_btn.click(fn=predict, inputs=[input_file], outputs=[basic_html, df_atom_features, df_thermo_props, plot])
264
  Dbutton.click(export_csv, df_atom_features, csv)
265
- D2button.click(export_csv_thermo, df_thermo_props, csv2)
266
- #demo.load(fn=line_plot_fn, inputs=[input_exe], ouputs=plot)
267
 
268
 
269
  demo.launch(server_name="0.0.0.0", server_port=7860)
 
174
  #ax1.legend(loc='lower right')
175
  return fig
176
 
177
+ def predict(input_file, charge):
178
  input_f = open(input_file.name, "r").read()
179
  input_format = input_file.name.split('.')[-1]
180
 
 
182
  oF.write(input_f)
183
 
184
  input_f2 = open('dummy_struct.'+input_format, "r").read()
185
+ gfn2_input = ["filename","geom=dummy_struct."+input_format, 'calcdens=1', 'thermo=1', "charge="+charge]
186
  gfn2_output = run_gfn2(gfn2_input)
 
187
 
 
 
188
  feature_visualization_html = get_feature_visualization(input_f2,input_format, gfn2_output, gfn2_output['xyz'])
189
  qm_atom_features = get_qm_atom_features(gfn2_output)
190
  thermo_data = get_thermo_data(gfn2_output)
191
  plot = plot_thermo(thermo_data)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
192
 
193
+ return feature_visualization_html, pd.DataFrame(qm_atom_features), pd.DataFrame(thermo_data), plot#, pd.DataFrame(thermo_data)#, pd.DataFrame(qm_mol_features, index=[0])
194
 
 
 
 
 
195
 
196
  with gr.Blocks() as demo:
197
  gr.Markdown("# QM property calculation")
 
 
 
 
 
 
 
198
  with gr.Row():
199
  input_file = gr.File(label="Structure file for input (xyz format)")
200
  input_file2 = input_file
201
  charge = gr.Textbox(placeholder="Total charge", label="Give the total charge of the input molecule. (Default=0)")
202
 
 
 
 
203
  single_btn = gr.Button(label="Run")
204
  with gr.Row():
205
  basic_html = gr.HTML()
206
  plot = gr.Plot()
 
207
  gr.HighlightedText(value=[("Positive Charge","Purple"),("Negative charge","red"),("Polarizability","Light blue"), ("Electronic Densities", "Beige")], color_map={"red":"#a0210f", "Light blue":"#809BAC", "Purple":"#4c4e9e", "Beige":"#F7D7BE"})
208
 
209
  with gr.Row():
 
216
  df_atom_features = gr.Dataframe()
217
  df_thermo_props = gr.Dataframe()
218
 
 
 
219
 
220
+ single_btn.click(fn=predict, inputs=[input_file, charge], outputs=[basic_html, df_atom_features, df_thermo_props, plot])
221
  Dbutton.click(export_csv, df_atom_features, csv)
222
+ D2button.click(export_csv_thermo, df_thermo_props, csv2)
 
223
 
224
 
225
  demo.launch(server_name="0.0.0.0", server_port=7860)
dummy_struct_dens.cub CHANGED
The diff for this file is too large to render. See raw diff