1 /* MInterfaceGene.c */
2 /**********************************************************************************************************
3 Copyright (c) 2002-2013 Abdul-Rahman Allouche. All rights reserved
4
5 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
6 documentation files (the Gabedit), to deal in the Software without restriction, including without limitation
7 the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
8 and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
9
10 The above copyright notice and this permission notice shall be included in all copies or substantial portions
11 of the Software.
12
13 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
14 TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
15 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
16 CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
17 DEALINGS IN THE SOFTWARE.
18 ************************************************************************************************************/
19
20
21 #include "../../Config.h"
22 #include <stdio.h>
23 #include <stdlib.h>
24 #include <string.h>
25 #include <gtk/gtk.h>
26
27 #include "../Common/Global.h"
28 #include "MInterfaceGene.h"
29 #include "../Utils/UtilsInterface.h"
30
31 static GtkWidget *entryC;
32 static GtkWidget *entryX;
33 static GtkWidget *entryY;
34 static GtkWidget *entryZ;
35
36 GtkWidget *checkbutton[32];
37
38 GtkWidget *ButtonRad1;
39 GtkWidget *ButtonRad2;
40
41 GtkWidget *Frame;
42 GtkWidget *LabelOnglet;
43 GtkWidget *LabelMenu;
44 GtkWidget *window1;
45 GtkWidget *label1;
46 GtkWidget *entry20;
47 GtkWidget *entry21;
48 GtkWidget *frame1;
49 GtkWidget *vboxo;
50 GtkWidget *vbox1;
51 GtkWidget *hbox1;
52 GtkWidget *entry1;
53 GtkWidget *entry2;
54 GtkWidget *entry3;
55 GtkWidget *entry4;
56 GtkWidget *label5;
57 GtkWidget *entry5;
58 GtkWidget *entry6;
59 GtkWidget *entry7;
60 GtkWidget *vbox2;
61 GtkWidget *entry8;
62 GtkWidget *hbox5;
63 GtkWidget *entry9;
64 GtkWidget *entry10;
65 GtkWidget *entry11;
66 GtkWidget *entry12;
67 GtkWidget *entry13;
68 GtkWidget *entry14;
69
70 /************************************************************************************************************/
Set_Entry1(GtkWidget * b,gpointer d)71 static void Set_Entry1(GtkWidget *b,gpointer d)
72 {
73 if(entryC != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryC),TRUE);
74 if(entryX != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryX),FALSE);
75 if(entryY != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryY),FALSE);
76 if(entryZ != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryZ),FALSE);
77 }
78 /************************************************************************************************************/
Set_Entry2(GtkWidget * b,gpointer d)79 static void Set_Entry2(GtkWidget *b,gpointer d)
80 {
81 if(entryC != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryC),FALSE);
82 if(entryX != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryX),TRUE);
83 if(entryY != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryY),TRUE);
84 if(entryZ != NULL ) gtk_widget_set_sensitive(GTK_WIDGET(entryZ),TRUE);
85 }
86 /************************************************************************************************************/
87 /*
88 static void add_separator_to_hbox(GtkWidget *win,GtkWidget *hbox)
89 {
90 GtkWidget *vseparator;
91 vseparator = gtk_vseparator_new ();
92 gtk_widget_show (vseparator);
93 gtk_box_pack_start (GTK_BOX (hbox), vseparator, FALSE, FALSE, 10);
94 }
95 */
96 /************************************************************************************************************/
add_separator_to_vbox(GtkWidget * win,GtkWidget * vbox)97 static void add_separator_to_vbox(GtkWidget *win,GtkWidget *vbox)
98 {
99 GtkWidget *hseparator;
100 hseparator = gtk_hseparator_new ();
101 gtk_widget_show (hseparator);
102 gtk_box_pack_start (GTK_BOX (vbox), hseparator, FALSE, FALSE, 0);
103 }
104 /************************************************************************************************************/
create_label_and_entry_in_hbox_false(GtkWidget * win,GtkWidget * hbox,gchar * tlabel,gchar * tset,gint len)105 static GtkWidget *create_label_and_entry_in_hbox_false(GtkWidget *win,GtkWidget *hbox,gchar *tlabel,gchar *tset,gint len)
106 {
107 GtkWidget *entry;
108 GtkWidget *label;
109
110 label = gtk_label_new (tlabel);
111 gtk_widget_set_size_request(GTK_WIDGET(label),len,-1);
112 gtk_widget_show (label);
113 gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
114
115 entry = gtk_entry_new ();
116 gtk_entry_set_text(GTK_ENTRY(entry),tset);
117 gtk_widget_set_size_request(GTK_WIDGET(entry),60,-1);
118 gtk_widget_show (entry);
119 gtk_box_pack_start (GTK_BOX (hbox), entry, FALSE, TRUE, 0);
120
121 return entry;
122 }
123 /************************************************************************************************************/
create_label_and_entry_in_hbox(GtkWidget * win,GtkWidget * hbox,gchar * tlabel,gchar * tset)124 static GtkWidget *create_label_and_entry_in_hbox(GtkWidget *win,GtkWidget *hbox,gchar *tlabel,gchar *tset)
125 {
126 GtkWidget *entry;
127 GtkWidget *label;
128
129 label = gtk_label_new (tlabel);
130 gtk_widget_show (label);
131 gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, FALSE, 0);
132
133 entry = gtk_entry_new ();
134 gtk_entry_set_text(GTK_ENTRY(entry),tset);
135 gtk_widget_show (entry);
136 gtk_box_pack_start (GTK_BOX (hbox), entry, FALSE, TRUE, 0);
137
138 return entry;
139 }
140 /************************************************************************************************************/
create_hbox_in_Vbox(GtkWidget * win,GtkWidget * vbox)141 static GtkWidget *create_hbox_in_Vbox(GtkWidget *win,GtkWidget *vbox)
142 {
143 GtkWidget *hbox;
144 hbox = gtk_hbox_new (FALSE, 0);
145 gtk_widget_show (hbox);
146 gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 0);
147
148 return hbox;
149 }
150 /************************************************************************************************************/
create_hboxlabelentry(GtkWidget * win,GtkWidget * vbox,gchar * tlabel,gchar * tset)151 static GtkWidget *create_hboxlabelentry(GtkWidget *win,GtkWidget *vbox,gchar *tlabel,gchar *tset)
152 {
153 GtkWidget *hbox;
154 GtkWidget *entry;
155 hbox = create_hbox_in_Vbox(win,vbox);
156 entry = create_label_and_entry_in_hbox(win,hbox,tlabel,tset);
157 return entry;
158 }
159 /************************************************************************************************************/
create_epilogue(GtkWidget * Frame)160 static void create_epilogue(GtkWidget *Frame)
161 {
162 GtkWidget *label1;
163 GtkWidget *frame1;
164 GtkWidget *vboxo;
165 GtkWidget *vbox1;
166 GtkWidget *hbox1;
167 GtkWidget *label5;
168 GtkWidget *window1;
169 GtkWidget *hbox5;
170 window1 = Frame;
171 vbox1 = gtk_vbox_new (FALSE, 0);
172 gtk_widget_show (vbox1);
173 gtk_container_add (GTK_CONTAINER (window1), vbox1);
174
175 hbox1 = gtk_hbox_new (FALSE, 10);
176 gtk_widget_show (hbox1);
177 gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, FALSE, 0);
178
179 label1 = gtk_label_new ("Title :");
180 gtk_widget_show (label1);
181 gtk_box_pack_start (GTK_BOX (hbox1), label1, FALSE, FALSE, 0);
182
183 entry20 = gtk_entry_new ();
184 gtk_widget_show (entry20);
185 gtk_box_pack_start (GTK_BOX (hbox1), entry20, TRUE, TRUE, 0);
186 gtk_entry_set_text(GTK_ENTRY(entry20),_("Input file generated by gabedit"));
187
188 add_separator_to_vbox( window1,vbox1);
189
190 hbox5 = gtk_hbox_new (FALSE, 0);
191 gtk_widget_show (hbox5);
192 gtk_box_pack_start (GTK_BOX (vbox1), hbox5, FALSE, FALSE, 0);
193 label5 = gtk_label_new (_("Memory size(in words) : "));
194 gtk_widget_show (label5);
195 gtk_box_pack_start (GTK_BOX (hbox5), label5, FALSE, FALSE, 0);
196
197 entry21 = gtk_entry_new ();
198 gtk_entry_set_text(GTK_ENTRY(entry21),"4000000");
199 gtk_widget_show (entry21);
200 gtk_box_pack_start (GTK_BOX (hbox5), entry21, FALSE, TRUE, 0);
201
202 add_separator_to_vbox( window1,vbox1);
203
204
205 window1 = vbox1;
206 frame1 = gtk_frame_new (_("Global Thresholds "));
207 gtk_widget_show (frame1);
208 gtk_container_add (GTK_CONTAINER (window1), frame1);
209 gtk_frame_set_label_align (GTK_FRAME (frame1), 0.5, 0.5);
210
211 hbox1 = gtk_hbox_new (FALSE, 0);
212 gtk_widget_show (hbox1);
213 gtk_container_add (GTK_CONTAINER (frame1), hbox1);
214
215 vboxo = vbox1;
216 vbox1 = gtk_vbox_new (FALSE, 0);
217 gtk_widget_show (vbox1);
218 gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 0);
219
220 entry1=create_hboxlabelentry(window1,vbox1,"Zero : ","1.d-12");
221 entry2=create_hboxlabelentry(window1,vbox1,"Oneint : ","1.d-12");
222 entry3=create_hboxlabelentry(window1,vbox1,"Twoint : ","1.d-12");
223 entry4=create_hboxlabelentry(window1,vbox1,"Prefac : ","1.d-14");
224 entry5=create_hboxlabelentry(window1,vbox1,"Locali : ","1.d-8");
225
226 vbox1 = gtk_vbox_new (FALSE, 0);
227 gtk_widget_show (vbox1);
228 gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 0);
229 entry6=create_hboxlabelentry(window1,vbox1," Eorder : ","1.d-4");
230 entry7=create_hboxlabelentry(window1,vbox1," Energy : ","1.d-6");
231 entry8=create_hboxlabelentry(window1,vbox1," Gradiant: ","1.d-2");
232 entry9=create_hboxlabelentry(window1,vbox1," Step : ","1.d-3");
233 entry10=create_hboxlabelentry(window1,vbox1," Orbital : ","1.d-5");
234
235 vbox1 = gtk_vbox_new (FALSE, 0);
236 gtk_widget_show (vbox1);
237 gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 0);
238
239 entry11=create_hboxlabelentry(window1,vbox1," Civec : ","1.d-5");
240 entry12=create_hboxlabelentry(window1,vbox1," Coeff : ","1.d-4");
241 entry13=create_hboxlabelentry(window1,vbox1," Printci : ","0.05");
242 entry14=create_hboxlabelentry(window1,vbox1," Punchci : ","99");
243
244 }
245 /************************************************************************************************************/
create_gprint(GtkWidget * Frame)246 static void create_gprint(GtkWidget *Frame)
247 {
248 guint i;
249 GtkWidget *frame1;
250 GtkWidget *vbox1;
251 GtkWidget *vbox2;
252 GtkWidget *hbox1;
253 GtkWidget *window1;
254 gchar *tGP1[7]={
255 _("Print basis information "),
256 _("Print CI vector in MCSCF"),
257 _("Print reference CSFs and their coefficients in CI "),
258 _("Print detailed I/O information "),
259 _("Print orbitals in SCF and MCSCF "),
260 _("Print bond angle information"),
261 _("Print information for singles in CI, CCSD ")
262 };
263 gchar *tGP2[7]={
264 _("Print bond distances "),
265 _("Print p-space configurations"),
266 _("Print variables each time they are set or changed "),
267 _("Print information for pairs in CI, CCSD "),
268 _("Print microiterations in MCSCF and CI"),
269 _("Print detailed CPU information "),
270 _("Print pair list in CI, CCSD")
271 };
272
273 window1 = Frame;
274 vbox1 = gtk_vbox_new (FALSE, 0);
275 gtk_widget_show (vbox1);
276 gtk_container_add (GTK_CONTAINER (window1), vbox1);
277
278
279 window1 = vbox1;
280 frame1 = gtk_frame_new (_("Global Print Options"));
281 gtk_widget_show (frame1);
282 gtk_container_add (GTK_CONTAINER (window1), frame1);
283 gtk_frame_set_label_align (GTK_FRAME (frame1), 0.5, 0.5);
284
285 hbox1 = gtk_hbox_new (FALSE, 0);
286 gtk_widget_show (hbox1);
287 gtk_container_add (GTK_CONTAINER (frame1), hbox1);
288
289 vbox1 = gtk_vbox_new (FALSE, 0);
290 gtk_widget_show (vbox1);
291 gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 0);
292
293 for(i=0;i<7;i++)
294 checkbutton[i] = create_checkbutton(window1,vbox1,tGP1[i]);
295
296 /*
297 GTK_TOGGLE_BUTTON (checkbutton[0])->active=TRUE;
298 GTK_TOGGLE_BUTTON (checkbutton[4])->active=TRUE;
299 */
300 gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton[0]), TRUE);
301 gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton[4]), TRUE);
302
303 vbox2 = gtk_vbox_new (FALSE, 0);
304 gtk_widget_show (vbox2);
305 gtk_box_pack_start (GTK_BOX (hbox1), vbox2, TRUE, TRUE, 0);
306
307 for(i=0;i<7;i++)
308 checkbutton[i+7] = create_checkbutton(window1,vbox2,tGP2[i]);
309 }
310 /************************************************************************************************************/
create_oneop(GtkWidget * Frame)311 static void create_oneop(GtkWidget *Frame)
312 {
313 guint i;
314 GtkWidget *frame1;
315 GtkWidget *vbox1;
316 GtkWidget *vbox2;
317 GtkWidget *hbox1;
318 GtkWidget *window1;
319 gchar *tO1[6]={
320 _("Overlap "),
321 _("Kinetic energy"),
322 _("Potential energy "),
323 _("Delta function "),
324 _("Delta4 function "),
325 _("One-electron Darwin term")
326 };
327 gchar *tO2[6]={
328 _("Mass-velocity term "),
329 _("Total Cowan-Griffin Relativistic correction"),
330 _("Products of angular momentum operators "),
331 _("Dipole moments"),
332 _("Second moment "),
333 _("Quadrupole moments and R2 ")
334 };
335 gchar *tO3[6]={
336 _("Electric field"),
337 _("Field gradients "),
338 _("Angular momentum operators"),
339 _("Velocity"),
340 _("Spin-orbit operators"),
341 _("ECP spin-orbit operators")
342 };
343
344 window1 = Frame;
345 vbox1 = gtk_vbox_new (FALSE, 0);
346 gtk_widget_show (vbox1);
347 gtk_container_add (GTK_CONTAINER (window1), vbox1);
348
349 window1 = vbox1;
350 frame1 = gtk_frame_new (_("One-electron operators and expectation values"));
351 gtk_widget_show (frame1);
352 gtk_container_add (GTK_CONTAINER (window1), frame1);
353 gtk_frame_set_label_align (GTK_FRAME (frame1), 0.5, 0.5);
354
355 vbox1 = gtk_vbox_new (FALSE, 0);
356 gtk_widget_show (vbox1);
357 gtk_container_add (GTK_CONTAINER (frame1), vbox1);
358
359 add_separator_to_vbox( window1,vbox1);
360
361 hbox1 = gtk_hbox_new (FALSE, 0);
362 gtk_widget_show (hbox1);
363 gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, FALSE, 0);
364
365 ButtonRad1 = gtk_radio_button_new_with_label( NULL,_("Compute with origin at "));
366 gtk_box_pack_start (GTK_BOX (hbox1), ButtonRad1, FALSE, FALSE, 0);
367 gtk_widget_show (ButtonRad1);
368
369 entryC = create_label_and_entry_in_hbox_false(window1,hbox1,_("Center Number : "),"1",(gint)(ScreenHeight*0.1));
370
371 g_signal_connect(G_OBJECT (ButtonRad1), "clicked", G_CALLBACK(Set_Entry1), NULL);
372
373 hbox1 = gtk_hbox_new (FALSE, 0);
374 gtk_widget_show (hbox1);
375 gtk_box_pack_start (GTK_BOX (vbox1), hbox1, FALSE, FALSE, 0);
376
377 ButtonRad2 = gtk_radio_button_new_with_label(
378 gtk_radio_button_get_group (GTK_RADIO_BUTTON (ButtonRad1)),
379 _("Compute with origin at "));
380 gtk_box_pack_start (GTK_BOX (hbox1), ButtonRad2, FALSE, FALSE, 0);
381 gtk_widget_show (ButtonRad2);
382 gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ButtonRad2), TRUE);
383 entryX = create_label_and_entry_in_hbox_false(window1,hbox1," X : ","0.0",(gint)(ScreenHeight*0.1));
384 entryY = create_label_and_entry_in_hbox_false(window1,hbox1," Y : ","0.0",(gint)(ScreenHeight*0.05));
385 entryZ = create_label_and_entry_in_hbox_false(window1,hbox1," Z : ","0.0",(gint)(ScreenHeight*0.05));
386 g_signal_connect(G_OBJECT (ButtonRad2), "clicked", G_CALLBACK(Set_Entry2), NULL);
387 Set_Entry2(NULL,NULL);
388
389 add_separator_to_vbox( window1,vbox1);
390
391 hbox1 = gtk_hbox_new (FALSE, 0);
392 gtk_widget_show (hbox1);
393 gtk_box_pack_start (GTK_BOX (vbox1), hbox1, TRUE, TRUE, 0);
394
395 vbox1 = gtk_vbox_new (FALSE, 0);
396 gtk_widget_show (vbox1);
397 gtk_box_pack_start (GTK_BOX (hbox1), vbox1, TRUE, TRUE, 0);
398
399 for(i=0;i<6;i++)
400 checkbutton[i+14] = create_checkbutton(window1,vbox1,tO1[i]);
401
402 vbox2 = gtk_vbox_new (FALSE, 0);
403 gtk_widget_show (vbox2);
404 gtk_box_pack_start (GTK_BOX (hbox1), vbox2, TRUE, TRUE, 0);
405
406 for(i=0;i<6;i++)
407 checkbutton[i+20] = create_checkbutton(window1,vbox2,tO2[i]);
408
409 vbox2 = gtk_vbox_new (FALSE, 0);
410 gtk_widget_show (vbox2);
411 gtk_box_pack_start (GTK_BOX (hbox1), vbox2, TRUE, TRUE, 0);
412
413 for(i=0;i<6;i++)
414 checkbutton[i+26] = create_checkbutton(window1,vbox2,tO3[i]);
415 }
416 /************************************************************************************************************/
Add_page_gene(GtkWidget * NoteBook,gchar * tNote,guint j)417 static void Add_page_gene(GtkWidget *NoteBook,gchar * tNote,guint j)
418 {
419 GtkWidget *Frame;
420 GtkWidget *LabelOnglet;
421 GtkWidget *LabelMenu;
422 GtkWidget *window1;
423
424 Frame = gtk_frame_new(NULL);
425 gtk_container_set_border_width(GTK_CONTAINER(Frame), 10);
426
427 LabelOnglet = gtk_label_new(tNote);
428 LabelMenu = gtk_label_new(tNote);
429 gtk_notebook_append_page_menu(GTK_NOTEBOOK(NoteBook),
430 Frame,
431 LabelOnglet, LabelMenu);
432
433 window1 = Frame;
434 g_object_set_data (G_OBJECT (window1), "window1", window1);
435 if(j==0)create_epilogue(Frame);
436 if(j==1)create_gprint(Frame);
437 if(j==2)create_oneop(Frame);
438
439
440 }
441 /************************************************************************************************************/
create_notebook_gene(GtkWidget * frame)442 static void create_notebook_gene(GtkWidget *frame)
443 {
444 GtkWidget *vbox;
445 GtkWidget *NoteBook;
446
447 vbox =create_vbox(frame);
448 NoteBook = gtk_notebook_new();
449 gtk_box_pack_start(GTK_BOX (vbox), NoteBook,FALSE, FALSE, 0);
450 Add_page_gene(NoteBook,_(" Title/Global Thresholds "),0);
451 Add_page_gene(NoteBook,_(" Global Print Options "),1);
452 Add_page_gene(NoteBook,_(" One-electron operators and expectation values "),2);
453 }
454 /************************************************************************************************************/
AjoutePageGene(GtkWidget * NoteBook,GeneS * gen)455 void AjoutePageGene(GtkWidget *NoteBook,GeneS *gen)
456 {
457
458 GtkWidget *Frame;
459 GtkWidget *LabelOnglet;
460 GtkWidget *LabelMenu;
461 GtkWidget *window1;
462
463
464 entryC=NULL;
465 entryX=NULL;
466 entryY=NULL;
467 entryZ=NULL;
468 Frame = gtk_frame_new(NULL);
469 gtk_container_set_border_width(GTK_CONTAINER(Frame), 20);
470
471 LabelOnglet = gtk_label_new(_("General"));
472 LabelMenu = gtk_label_new(_("General"));
473 gtk_notebook_append_page_menu(GTK_NOTEBOOK(NoteBook), Frame, LabelOnglet, LabelMenu);
474
475 window1 = Frame;
476 g_object_set_data (G_OBJECT (window1), "window1", window1);
477 create_notebook_gene(Frame);
478
479 gen->title=entry20;
480 gen->memory=entry21;
481
482 gen->gth_zero=entry1 ;
483 gen->gth_oneint=entry2 ;
484 gen->gth_twoint=entry3 ;
485 gen->gth_prefac=entry4 ;
486 gen->gth_locali=entry5 ;
487 gen->gth_eorder=entry6 ;
488 gen->gth_energy=entry7 ;
489 gen->gth_gradiant=entry8 ;
490 gen->gth_step=entry9 ;
491 gen->gth_orbital=entry10 ;
492 gen->gth_civec=entry11;
493 gen->gth_coeff=entry12;
494 gen->gth_printci=entry13;
495 gen->gth_punchci=entry14;
496
497 gen->basis=checkbutton[0];
498 gen->civector=checkbutton[1];
499 gen->ref=checkbutton[2];
500 gen->io=checkbutton[3];
501 gen->orbital=checkbutton[4];
502 gen->angles=checkbutton[5];
503 gen->cs=checkbutton[6];
504 gen->distance=checkbutton[7];
505 gen->pspace=checkbutton[8];
506 gen->variable=checkbutton[9];
507 gen->cp=checkbutton[10];
508 gen->micro=checkbutton[11];
509 gen->cpu=checkbutton[12];
510 gen->pairs=checkbutton[13];
511
512 gen->RadCenter=ButtonRad1;
513 gen->entryC=entryC;
514 gen->entryX=entryX;
515 gen->entryY=entryY;
516 gen->entryZ=entryZ;
517
518 gen->Overlap=checkbutton[14];
519 gen->Kinetic=checkbutton[15];
520 gen->Potential=checkbutton[16];
521 gen->Delta=checkbutton[17];
522 gen->Delta4=checkbutton[18];
523 gen->Darwin=checkbutton[19];
524
525 gen->MassVelocity=checkbutton[20];
526 gen->CowanGriffin=checkbutton[21];
527 gen->ProductsMO=checkbutton[22];
528 gen->Dipole=checkbutton[23];
529 gen->Second=checkbutton[24];
530 gen->Quadrupole=checkbutton[25];
531
532 gen->Electric=checkbutton[26];
533 gen->Field=checkbutton[27];
534 gen->AngularMO=checkbutton[28];
535 gen->Velocity=checkbutton[29];
536 gen->SpinOrbit=checkbutton[30];
537 gen->ECP=checkbutton[31];
538 }
539
540