From db680dab4f9a78ac90d903ce9cb14ea891041a67 Mon Sep 17 00:00:00 2001 From: kossoski Date: Sun, 6 Feb 2022 20:22:32 +0100 Subject: [PATCH] update --- Be2_cc-pvtz/pes_s4.dat | 12 ++ F2_cc-pvdz/compute_NPE.pl | 35 +++- F2_cc-pvdz/fit_eq.gnu | 190 +++++++++++++------- F2_cc-pvdz/fit_eq.sh | 296 ++++++++++++++++++++++---------- F2_cc-pvdz/freq.gnu | 43 +++-- F2_cc-pvdz/pes_ooCIo2.5.dat | 8 +- F2_cc-pvdz/pes_ooCIs2.dat | 2 +- F2_cc-pvdz/pes_s4.dat | 16 +- F2_cc-pvdz/plot_stat.gnu | 52 ++++-- F2_cc-pvdz/plot_stat.sh | 19 +- F2_cc-pvdz/xe.gnu | 36 ++-- H8_cc-pvdz/compute_NPE.pl | 35 +++- H8_cc-pvdz/fit_eq_1.sh | 62 +++++++ H8_cc-pvdz/pes_CISDT.dat | 40 ++--- H8_cc-pvdz/pes_ooCIo1.dat | 9 +- H8_cc-pvdz/plot_pes.gnu | 4 +- H8_cc-pvdz/plot_stat.gnu | 39 +++-- H8_cc-pvdz/plot_stat.sh | 21 ++- HF_cc-pvdz/pes_ooCIs0.dat | 4 +- N2_cc-pvdz/compute_NPE.pl | 35 +++- N2_cc-pvdz/fit_eq.gnu | 189 +++++++++++++------- N2_cc-pvdz/fit_eq.sh | 296 ++++++++++++++++++++++---------- N2_cc-pvdz/freq.gnu | 43 +++-- N2_cc-pvdz/pes_ooCIo2.dat | 28 +-- N2_cc-pvdz/pes_ooCIo2_2.dat | 39 +++++ N2_cc-pvdz/pes_ooCIo2_3.dat | 39 +++++ N2_cc-pvdz/pes_ooCIs2.dat | 10 ++ N2_cc-pvdz/pes_s4.dat | 13 +- N2_cc-pvdz/plot_stat.gnu | 40 +++-- N2_cc-pvdz/plot_stat.sh | 19 +- N2_cc-pvdz/xe.gnu | 36 ++-- determinants/determinants.f90 | 274 ++++++++++++++++++++++++----- ethylene_cc-pvdz/pes_s2.dat | 22 ++- ethylene_cc-pvdz/pes_s4.dat | 9 + ethylene_cc-pvdz/plot_error.gnu | 1 + ethylene_cc-pvdz/plot_pes.gnu | 1 + 36 files changed, 1490 insertions(+), 527 deletions(-) create mode 100755 H8_cc-pvdz/fit_eq_1.sh create mode 100644 N2_cc-pvdz/pes_ooCIo2_2.dat create mode 100644 N2_cc-pvdz/pes_ooCIo2_3.dat create mode 100644 ethylene_cc-pvdz/pes_s4.dat diff --git a/Be2_cc-pvtz/pes_s4.dat b/Be2_cc-pvtz/pes_s4.dat index 7a10bd7..7290d7c 100644 --- a/Be2_cc-pvtz/pes_s4.dat +++ b/Be2_cc-pvtz/pes_s4.dat @@ -14,3 +14,15 @@ 3.3 -29.24835078 3.4 -29.24813699 3.5 -29.24797176 +3.6 -29.24784340 +3.7 -29.24774291 +3.8 -29.24766365 +3.9 -29.24760669 +4.0 -29.24753972 +4.1 -29.24749252 +4.2 -29.24744961 +4.3 -29.24740951 +4.4 -29.24737120 +4.5 -29.24733409 +4.6 -29.24729752 +4.7 -29.24726127 diff --git a/F2_cc-pvdz/compute_NPE.pl b/F2_cc-pvdz/compute_NPE.pl index 9a74955..388f3a5 100755 --- a/F2_cc-pvdz/compute_NPE.pl +++ b/F2_cc-pvdz/compute_NPE.pl @@ -7,28 +7,44 @@ use List::Util qw(min max); my $case = $ARGV[0]; my $xcut = $ARGV[1]; -my(@files,@index,$outfile); +my(@files,@index,$detfile,$outfile); if($case==1){ @files = qw( pes_rhf.dat pes_CIo1.dat pes_CIo1.5.dat pes_CIo2.dat pes_CIo2.5.dat pes_CIo3.dat pes_CIo3.5.dat pes_CIo4.dat); @index = qw( 0 1 1.5 2 2.5 3 3.5 4); +$detfile = "det_CIo.dat"; $outfile = "stat_CIo.dat"; } elsif($case==2){ @files = qw( pes_rhf.dat pes_ooCIo1.dat pes_ooCIo1.5.dat pes_ooCIo2.dat pes_ooCIo2.5.dat pes_ooCIo3.dat pes_ooCIo3.5.dat pes_ooCIo4.dat); @index = qw( 0 1 1.5 2 2.5 3 3.5 4); +$detfile = "det_CIo.dat"; $outfile = "stat_ooCIo.dat"; } elsif($case==3){ @files = qw( pes_rhf.dat pes_rhf.dat pes_CISD.dat pes_CISDT.dat pes_CISDTQ.dat); @index = qw( 0 1 2 3 4); +$detfile = "det_CI.dat"; $outfile = "stat_CI.dat"; } elsif($case==4){ -@files = qw( pes_rhf.dat pes_rhf.dat pes_ooCISD.dat pes_ooCISDT.dat); -@index = qw( 0 1 2 3); +@files = qw( pes_rhf.dat pes_rhf.dat pes_ooCISD.dat pes_ooCISDT.dat pes_ooCISDTQ.dat); +@index = qw( 0 1 2 3 4); +$detfile = "det_CI.dat"; $outfile = "stat_ooCI.dat"; } +elsif($case==5){ +@files = qw( pes_s0.dat pes_s2.dat pes_s4.dat); +@index = qw( 0 2 4); +$detfile = "det_CIs.dat"; +$outfile = "stat_CIs.dat"; +} +elsif($case==6){ +@files = qw( pes_ooCIs0.dat pes_ooCIs2.dat pes_ooCIs4.dat); +@index = qw( 0 2 4); +$detfile = "det_CIs.dat"; +$outfile = "stat_ooCIs.dat"; +} else{ print "case variable not recognized \n"; die; @@ -53,6 +69,17 @@ open(Fi, '<', $fci_file) or die $!; } close(Fi); +my(@index2,@det); +my $k=0; +open(Fi, '<', $detfile) or die $!; + while(){ + my @line = split( /\s+/, $_ ); + $index2[$k] = $line[0]; + $det[$k] = $line[1]; + $k++; + } +close(Fi); + if(-e $outfile){unlink $outfile}; open(Fo, '>>', $outfile) or die $!; @@ -88,7 +115,7 @@ close(Fi); if($x==$xcut){ my $npe = $maxy - $miny; my $closeness = $maxy + $miny; - print Fo "$index[$j] $npe $closeness $maxy $miny \n"; + print Fo "$index[$j] $index2[$j] $det[$j] $npe $closeness $maxy $miny \n"; } # } diff --git a/F2_cc-pvdz/fit_eq.gnu b/F2_cc-pvdz/fit_eq.gnu index 373e165..38ec8d2 100644 --- a/F2_cc-pvdz/fit_eq.gnu +++ b/F2_cc-pvdz/fit_eq.gnu @@ -15,7 +15,6 @@ set encoding iso_8859_1 set xrange[0.95:8.0] xmin=1.25 xmax=1.65 - # VIEW 1: set yrange[-199.11:-198.6] ################################################################################### @@ -23,15 +22,17 @@ set yrange[-199.11:-198.6] set format y "%.1f" -set style line 1 dt 1 lw 3 linecolor rgb "gray60" -set style line 2 dt 1 lw 3 linecolor rgb "black" -set style line 9 dt 1 lw 2 linecolor rgb "violet" -set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 -set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 -set style line 5 dt 2 lw 2 linecolor rgb "sea-green" pt 13 ps 2 -set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 -set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 -set style line 15 dt 2 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 1 dt 1 lw 3 linecolor rgb "gray60" +set style line 2 dt 1 lw 3 linecolor rgb "black" +set style line 9 dt 1 lw 2 linecolor rgb "violet" +set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 +set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 +set style line 5 dt 2 lw 2 linecolor rgb "sea-green" pt 13 ps 2 +set style line 8 dt 1 lw 2 linecolor rgb "medium-blue" pt 13 ps 2 +set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 +set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 15 dt 2 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 18 dt 1 lw 2 linecolor rgb "medium-blue" pt 7 ps 2 set xlabel "Distance ({\305})" set ylabel 'Energy (Hartree)' @@ -57,6 +58,11 @@ D15=0.0;a15=1.0;xe15=1.0;C15=0.0 D16=0.0;a16=1.0;xe16=1.0;C16=0.0 D17=0.0;a17=1.0;xe17=1.0;C17=0.0 D18=0.0;a18=1.0;xe18=1.0;C18=0.0 +D19=0.0;a19=1.0;xe19=1.0;C19=0.0 +D20=0.0;a20=1.0;xe20=1.0;C20=0.0 +D21=0.0;a21=1.0;xe21=1.0;C21=0.0 +D22=0.0;a22=1.0;xe22=1.0;C22=0.0 +D23=0.0;a23=1.0;xe23=1.0;C23=0.0 # function for fitting @@ -111,7 +117,7 @@ fit [xmin:xmax] [*:*] f4(x) filename u 1:($2) via D4,a4,xe4,C4 } f5(x) = D5*(1-exp(-a5*(x-xe5)))**2+C5 -filename='pes_CIo1.dat' +filename='pes_s0.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a5=1.0; xe5=STATS_pos_min_y; C5=STATS_min_y @@ -121,7 +127,7 @@ fit [xmin:xmax] [*:*] f5(x) filename u 1:($2) via D5,a5,xe5,C5 } f6(x) = D6*(1-exp(-a6*(x-xe6)))**2+C6 -filename='pes_CIo1.5.dat' +filename='pes_s2.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a6=1.0; xe6=STATS_pos_min_y; C6=STATS_min_y @@ -131,7 +137,7 @@ fit [xmin:xmax] [*:*] f6(x) filename u 1:($2) via D6,a6,xe6,C6 } f7(x) = D7*(1-exp(-a7*(x-xe7)))**2+C7 -filename='pes_CIo2.dat' +filename='pes_s4.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a7=1.0; xe7=STATS_pos_min_y; C7=STATS_min_y @@ -141,7 +147,7 @@ fit [xmin:xmax] [*:*] f7(x) filename u 1:($2) via D7,a7,xe7,C7 } f8(x) = D8*(1-exp(-a8*(x-xe8)))**2+C8 -filename='pes_CIo2.5.dat' +filename='pes_CIo1.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a8=1.0; xe8=STATS_pos_min_y; C8=STATS_min_y @@ -151,7 +157,7 @@ fit [xmin:xmax] [*:*] f8(x) filename u 1:($2) via D8,a8,xe8,C8 } f9(x) = D9*(1-exp(-a9*(x-xe9)))**2+C9 -filename='pes_CIo3.dat' +filename='pes_CIo1.5.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a9=1.0; xe9=STATS_pos_min_y; C9=STATS_min_y @@ -161,7 +167,7 @@ fit [xmin:xmax] [*:*] f9(x) filename u 1:($2) via D9,a9,xe9,C9 } f10(x) = D10*(1-exp(-a10*(x-xe10)))**2+C10 -filename='pes_CIo3.5.dat' +filename='pes_CIo2.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a10=1.0; xe10=STATS_pos_min_y; C10=STATS_min_y @@ -171,7 +177,7 @@ fit [xmin:xmax] [*:*] f10(x) filename u 1:($2) via D10,a10,xe10,C10 } f11(x) = D11*(1-exp(-a11*(x-xe11)))**2+C11 -filename='pes_CIo4.dat' +filename='pes_CIo2.5.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a11=1.0; xe11=STATS_pos_min_y; C11=STATS_min_y @@ -181,7 +187,7 @@ fit [xmin:xmax] [*:*] f11(x) filename u 1:($2) via D11,a11,xe11,C11 } f12(x) = D12*(1-exp(-a12*(x-xe12)))**2+C12 -filename='pes_ooCISD.dat' +filename='pes_CIo3.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a12=1.0; xe12=STATS_pos_min_y; C12=STATS_min_y @@ -191,7 +197,7 @@ fit [xmin:xmax] [*:*] f12(x) filename u 1:($2) via D12,a12,xe12,C12 } f13(x) = D13*(1-exp(-a13*(x-xe13)))**2+C13 -filename='pes_ooCISDT.dat' +filename='pes_CIo3.5.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a13=1.0; xe13=STATS_pos_min_y; C13=STATS_min_y @@ -201,7 +207,7 @@ fit [xmin:xmax] [*:*] f13(x) filename u 1:($2) via D13,a13,xe13,C13 } f14(x) = D14*(1-exp(-a14*(x-xe14)))**2+C14 -filename='pes_ooCIo1.dat' +filename='pes_CIo4.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a14=1.0; xe14=STATS_pos_min_y; C14=STATS_min_y @@ -211,7 +217,7 @@ fit [xmin:xmax] [*:*] f14(x) filename u 1:($2) via D14,a14,xe14,C14 } f15(x) = D15*(1-exp(-a15*(x-xe15)))**2+C15 -filename='pes_ooCIo1.5.dat' +filename='pes_ooCISD.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a15=1.0; xe15=STATS_pos_min_y; C15=STATS_min_y @@ -221,7 +227,7 @@ fit [xmin:xmax] [*:*] f15(x) filename u 1:($2) via D15,a15,xe15,C15 } f16(x) = D16*(1-exp(-a16*(x-xe16)))**2+C16 -filename='pes_ooCIo2.dat' +filename='pes_ooCISDT.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a16=1.0; xe16=STATS_pos_min_y; C16=STATS_min_y @@ -231,7 +237,7 @@ fit [xmin:xmax] [*:*] f16(x) filename u 1:($2) via D16,a16,xe16,C16 } f17(x) = D17*(1-exp(-a17*(x-xe17)))**2+C17 -filename='pes_ooCIo2.5.dat' +filename='pes_ooCIs0.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a17=1.0; xe17=STATS_pos_min_y; C17=STATS_min_y @@ -241,7 +247,7 @@ fit [xmin:xmax] [*:*] f17(x) filename u 1:($2) via D17,a17,xe17,C17 } f18(x) = D18*(1-exp(-a18*(x-xe18)))**2+C18 -filename='pes_ooCIo3.dat' +filename='pes_ooCIs2.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a18=1.0; xe18=STATS_pos_min_y; C18=STATS_min_y @@ -250,48 +256,108 @@ D18=last_y-C18 fit [xmin:xmax] [*:*] f18(x) filename u 1:($2) via D18,a18,xe18,C18 } +f19(x) = D19*(1-exp(-a19*(x-xe19)))**2+C19 +filename='pes_ooCIo1.dat' +if ( file_exists(filename) ){ +stats filename using 1:2 nooutput +a19=1.0; xe19=STATS_pos_min_y; C19=STATS_min_y +stats filename using 1:(last_y=$2) every ::STATS_records-1::STATS_records-1 nooutput +D19=last_y-C19 +fit [xmin:xmax] [*:*] f19(x) filename u 1:($2) via D19,a19,xe19,C19 +} + +f20(x) = D20*(1-exp(-a20*(x-xe20)))**2+C20 +filename='pes_ooCIo1.5.dat' +if ( file_exists(filename) ){ +stats filename using 1:2 nooutput +a20=1.0; xe20=STATS_pos_min_y; C20=STATS_min_y +stats filename using 1:(last_y=$2) every ::STATS_records-1::STATS_records-1 nooutput +D20=last_y-C20 +fit [xmin:xmax] [*:*] f20(x) filename u 1:($2) via D20,a20,xe20,C20 +} + +f21(x) = D21*(1-exp(-a21*(x-xe21)))**2+C21 +filename='pes_ooCIo2.dat' +if ( file_exists(filename) ){ +stats filename using 1:2 nooutput +a21=1.0; xe21=STATS_pos_min_y; C21=STATS_min_y +stats filename using 1:(last_y=$2) every ::STATS_records-1::STATS_records-1 nooutput +D21=last_y-C21 +fit [xmin:xmax] [*:*] f21(x) filename u 1:($2) via D21,a21,xe21,C21 +} + +f22(x) = D22*(1-exp(-a22*(x-xe22)))**2+C22 +filename='pes_ooCIo2.5.dat' +if ( file_exists(filename) ){ +stats filename using 1:2 nooutput +a22=1.0; xe22=STATS_pos_min_y; C22=STATS_min_y +stats filename using 1:(last_y=$2) every ::STATS_records-1::STATS_records-1 nooutput +D22=last_y-C22 +fit [xmin:xmax] [*:*] f22(x) filename u 1:($2) via D22,a22,xe22,C22 +} + +f23(x) = D23*(1-exp(-a23*(x-xe23)))**2+C23 +filename='pes_ooCIo3.dat' +if ( file_exists(filename) ){ +stats filename using 1:2 nooutput +a23=1.0; xe23=STATS_pos_min_y; C23=STATS_min_y +stats filename using 1:(last_y=$2) every ::STATS_records-1::STATS_records-1 nooutput +D23=last_y-C23 +fit [xmin:xmax] [*:*] f23(x) filename u 1:($2) via D23,a23,xe23,C23 +} + ################################################################################### ################################################################################### # SYSTEM DEPENDENT PART: -plot 'pes_rhf.dat' w lp ls 1 notitle, \ - 'pes_CISD.dat' w lp ls 3 notitle, \ - 'pes_CISDT.dat' w lp ls 3 notitle, \ - 'pes_CISDTQ.dat' w lp ls 3 notitle, \ - 'pes_CIo1.dat' w lp ls 4 notitle, \ - 'pes_CIo1.5.dat' w lp ls 5 notitle, \ - 'pes_CIo2.dat' w lp ls 4 notitle, \ - 'pes_CIo2.5.dat' w lp ls 5 notitle, \ - 'pes_CIo3.dat' w lp ls 4 notitle, \ - 'pes_CIo3.5.dat' w lp ls 5 notitle, \ - 'pes_CIo4.dat' w lp ls 4 notitle, \ - 'pes_ooCISD.dat' w lp ls 13 notitle, \ - 'pes_ooCISDT.dat' w lp ls 13 notitle, \ - 'pes_ooCIo1.dat' w lp ls 14 notitle, \ - 'pes_ooCIo1.5.dat' w lp ls 15 notitle, \ - 'pes_ooCIo2.dat' w lp ls 14 notitle, \ - 'pes_ooCIo2.5.dat' w lp ls 15 notitle, \ - 'pes_ooCIo3.dat' w lp ls 14 notitle, \ - 'pes_fci.dat' w lp ls 2 notitle, \ - [xmin:xmax] f0(x) w l ls 9 notitle, \ - [xmin:xmax] f1(x) w l ls 9 notitle, \ - [xmin:xmax] f2(x) w l ls 9 notitle, \ - [xmin:xmax] f3(x) w l ls 9 notitle, \ - [xmin:xmax] f4(x) w l ls 9 notitle, \ - [xmin:xmax] f5(x) w l ls 9 notitle, \ - [xmin:xmax] f6(x) w l ls 9 notitle, \ - [xmin:xmax] f7(x) w l ls 9 notitle, \ - [xmin:xmax] f8(x) w l ls 9 notitle, \ - [xmin:xmax] f9(x) w l ls 9 notitle, \ - [xmin:xmax] f10(x) w l ls 9 notitle, \ - [xmin:xmax] f11(x) w l ls 9 notitle, \ - [xmin:xmax] f12(x) w l ls 9 notitle, \ - [xmin:xmax] f13(x) w l ls 9 notitle, \ - [xmin:xmax] f14(x) w l ls 9 notitle, \ - [xmin:xmax] f15(x) w l ls 9 notitle, \ - [xmin:xmax] f16(x) w l ls 9 notitle, \ - [xmin:xmax] f17(x) w l ls 9 notitle, \ - [xmin:xmax] f18(x) w l ls 9 notitle +plot 'pes_rhf.dat' w lp ls 1 notitle, \ + 'pes_CISD.dat' w lp ls 3 notitle, \ + 'pes_CISDT.dat' w lp ls 3 notitle, \ + 'pes_CISDTQ.dat' w lp ls 3 notitle, \ + 'pes_s0.dat' w lp ls 8 notitle, \ + 'pes_s2.dat' w lp ls 8 notitle, \ + 'pes_s4.dat' w lp ls 8 notitle, \ + 'pes_CIo1.dat' w lp ls 4 notitle, \ + 'pes_CIo1.5.dat' w lp ls 5 notitle, \ + 'pes_CIo2.dat' w lp ls 4 notitle, \ + 'pes_CIo2.5.dat' w lp ls 5 notitle, \ + 'pes_CIo3.dat' w lp ls 4 notitle, \ + 'pes_CIo3.5.dat' w lp ls 5 notitle, \ + 'pes_CIo4.dat' w lp ls 4 notitle, \ + 'pes_ooCISD.dat' w lp ls 13 notitle, \ + 'pes_ooCISDT.dat' w lp ls 13 notitle, \ + 'pes_ooCIs0.dat' w lp ls 18 notitle, \ + 'pes_ooCIs2.dat' w lp ls 18 notitle, \ + 'pes_ooCIo1.dat' w lp ls 14 notitle, \ + 'pes_ooCIo1.5.dat' w lp ls 15 notitle, \ + 'pes_ooCIo2.dat' w lp ls 14 notitle, \ + 'pes_ooCIo2.5.dat' w lp ls 15 notitle, \ + 'pes_ooCIo3.dat' w lp ls 14 notitle, \ + 'pes_fci.dat' w lp ls 2 notitle, \ + [xmin:xmax] f0(x) w l ls 9 notitle, \ + [xmin:xmax] f1(x) w l ls 9 notitle, \ + [xmin:xmax] f2(x) w l ls 9 notitle, \ + [xmin:xmax] f3(x) w l ls 9 notitle, \ + [xmin:xmax] f4(x) w l ls 9 notitle, \ + [xmin:xmax] f5(x) w l ls 9 notitle, \ + [xmin:xmax] f6(x) w l ls 9 notitle, \ + [xmin:xmax] f7(x) w l ls 9 notitle, \ + [xmin:xmax] f8(x) w l ls 9 notitle, \ + [xmin:xmax] f9(x) w l ls 9 notitle, \ + [xmin:xmax] f10(x) w l ls 9 notitle, \ + [xmin:xmax] f11(x) w l ls 9 notitle, \ + [xmin:xmax] f12(x) w l ls 9 notitle, \ + [xmin:xmax] f13(x) w l ls 9 notitle, \ + [xmin:xmax] f14(x) w l ls 9 notitle, \ + [xmin:xmax] f15(x) w l ls 9 notitle, \ + [xmin:xmax] f16(x) w l ls 9 notitle, \ + [xmin:xmax] f17(x) w l ls 9 notitle, \ + [xmin:xmax] f18(x) w l ls 9 notitle, \ + [xmin:xmax] f19(x) w l ls 9 notitle, \ + [xmin:xmax] f20(x) w l ls 9 notitle, \ + [xmin:xmax] f21(x) w l ls 9 notitle, \ + [xmin:xmax] f22(x) w l ls 9 notitle, \ + [xmin:xmax] f23(x) w l ls 9 notitle ################################################################################### ################################################################################### diff --git a/F2_cc-pvdz/fit_eq.sh b/F2_cc-pvdz/fit_eq.sh index 5dad2b7..b3d09b4 100755 --- a/F2_cc-pvdz/fit_eq.sh +++ b/F2_cc-pvdz/fit_eq.sh @@ -1,5 +1,7 @@ #!/bin/bash +####################################################################### + if [ -f "fit.log" ]; then rm "fit.log" fi @@ -13,20 +15,25 @@ grep ^a fit.log | grep = | sed 's/=//g' | cut -c -30 | sed 's/a2 /hfCISD /g' | sed 's/a3 /hfCISDT /g' | sed 's/a4 /hfCISDTQ /g' | - sed 's/a5 /hfCIo1 /g' | - sed 's/a6 /hfCIo1.5 /g' | - sed 's/a7 /hfCIo2 /g' | - sed 's/a8 /hfCIo2.5 /g' | - sed 's/a9 /hfCIo3 /g' | - sed 's/a10/hfCIo3.5 /g' | - sed 's/a11/hfCIo4 /g' | - sed 's/a12/ooCISD /g' | - sed 's/a13/ooCISDT /g' | - sed 's/a14/ooCIo1 /g' | - sed 's/a15/ooCIo1.5 /g' | - sed 's/a16/ooCIo2 /g' | - sed 's/a17/ooCIo2.5 /g' | - sed 's/a18/ooCIo3 /g' > a.dat + sed 's/a5 /hfCIs0 /g' | + sed 's/a6 /hfCIs2 /g' | + sed 's/a7 /hfCIs4 /g' | + sed 's/a8 /hfCIo1 /g' | + sed 's/a9 /hfCIo1.5 /g' | + sed 's/a10/hfCIo2 /g' | + sed 's/a11/hfCIo2.5 /g' | + sed 's/a12/hfCIo3 /g' | + sed 's/a13/hfCIo3.5 /g' | + sed 's/a14/hfCIo4 /g' | + sed 's/a15/ooCISD /g' | + sed 's/a16/ooCISDT /g' | + sed 's/a17/ooCIs0 /g' | + sed 's/a18/ooCIs2 /g' | + sed 's/a19/ooCIo1 /g' | + sed 's/a20/ooCIo1.5 /g' | + sed 's/a21/ooCIo2 /g' | + sed 's/a22/ooCIo2.5 /g' | + sed 's/a23/ooCIo3 /g' > a.dat grep ^D fit.log | grep = | sed 's/=//g' | cut -c -30 | sed 's/D0 /FCI /g' | @@ -34,107 +41,216 @@ grep ^D fit.log | grep = | sed 's/=//g' | cut -c -30 | sed 's/D2 /hfCISD /g' | sed 's/D3 /hfCISDT /g' | sed 's/D4 /hfCISDTQ /g' | - sed 's/D5 /hfCIo1 /g' | - sed 's/D6 /hfCIo1.5 /g' | - sed 's/D7 /hfCIo2 /g' | - sed 's/D8 /hfCIo2.5 /g' | - sed 's/D9 /hfCIo3 /g' | - sed 's/D10/hfCIo3.5 /g' | - sed 's/D11/hfCIo4 /g' | - sed 's/D12/ooCISD /g' | - sed 's/D13/ooCISDT /g' | - sed 's/D14/ooCIo1 /g' | - sed 's/D15/ooCIo1.5 /g' | - sed 's/D16/ooCIo2 /g' | - sed 's/D17/ooCIo2.5 /g' | - sed 's/D18/ooCIo3 /g' > D.dat + sed 's/D5 /hfCIs0 /g' | + sed 's/D6 /hfCIs2 /g' | + sed 's/D7 /hfCIs4 /g' | + sed 's/D8 /hfCIo1 /g' | + sed 's/D9 /hfCIo1.5 /g' | + sed 's/D10/hfCIo2 /g' | + sed 's/D11/hfCIo2.5 /g' | + sed 's/D12/hfCIo3 /g' | + sed 's/D13/hfCIo3.5 /g' | + sed 's/D14/hfCIo4 /g' | + sed 's/D15/ooCISD /g' | + sed 's/D16/ooCISDT /g' | + sed 's/D17/ooCIs0 /g' | + sed 's/D18/ooCIs2 /g' | + sed 's/D19/ooCIo1 /g' | + sed 's/D20/ooCIo1.5 /g' | + sed 's/D21/ooCIo2 /g' | + sed 's/D22/ooCIo2.5 /g' | + sed 's/D23/ooCIo3 /g' > D.dat paste a.dat D.dat > aD.dat grep 'FCI' aD.dat | sed 's/FCI/-0.1 /g' > aD_FCI.dat grep 'FCI' aD.dat | sed 's/FCI/4.1 /g' >> aD_FCI.dat -grep 'RHF' aD.dat | sed 's/RHF/0 /g' > aD_CI.dat -grep 'RHF' aD.dat | sed 's/RHF/1 /g' >> aD_CI.dat -grep 'hfCISD ' aD.dat | sed 's/hfCISD/2 /g' >> aD_CI.dat -grep 'hfCISDT ' aD.dat | sed 's/hfCISDT/3 /g' >> aD_CI.dat -grep 'hfCISDTQ' aD.dat | sed 's/hfCISDTQ/4 /g' >> aD_CI.dat +grep ^a fit.log | grep = | sed 's/=//g' | cut -c -30 > a0.dat +grep 'a0 ' a0.dat | sed 's/a0 /FCI /g' > a.dat +grep 'a1 ' a0.dat | sed 's/a1 /RHF /g' >> a.dat +grep 'a2 ' a0.dat | sed 's/a2 /hfCISD /g' >> a.dat +grep 'a3 ' a0.dat | sed 's/a3 /hfCISDT /g' >> a.dat +grep 'a4 ' a0.dat | sed 's/a4 /hfCISDTQ /g' >> a.dat +grep 'a5 ' a0.dat | sed 's/a5 /hfCIs0 /g' >> a.dat +grep 'a6 ' a0.dat | sed 's/a6 /hfCIs2 /g' >> a.dat +grep 'a7 ' a0.dat | sed 's/a7 /hfCIs4 /g' >> a.dat +grep 'a8 ' a0.dat | sed 's/a8 /hfCIo1 /g' >> a.dat +grep 'a9 ' a0.dat | sed 's/a9 /hfCIo1.5 /g' >> a.dat +grep 'a10 ' a0.dat | sed 's/a10/hfCIo2 /g' >> a.dat +grep 'a11 ' a0.dat | sed 's/a11/hfCIo2.5 /g' >> a.dat +grep 'a12 ' a0.dat | sed 's/a12/hfCIo3 /g' >> a.dat +grep 'a13 ' a0.dat | sed 's/a13/hfCIo3.5 /g' >> a.dat +grep 'a14 ' a0.dat | sed 's/a14/hfCIo4 /g' >> a.dat +grep 'a15 ' a0.dat | sed 's/a15/ooCISD /g' >> a.dat +grep 'a16 ' a0.dat | sed 's/a16/ooCISDT /g' >> a.dat +grep 'a17 ' a0.dat | sed 's/a17/ooCIs0 /g' >> a.dat +grep 'a18 ' a0.dat | sed 's/a18/ooCIs2 /g' >> a.dat +grep 'a19 ' a0.dat | sed 's/a19/ooCIo1 /g' >> a.dat +grep 'a20 ' a0.dat | sed 's/a20/ooCIo1.5 /g' >> a.dat +grep 'a21 ' a0.dat | sed 's/a21/ooCIo2 /g' >> a.dat +grep 'a22 ' a0.dat | sed 's/a22/ooCIo2.5 /g' >> a.dat +grep 'a23 ' a0.dat | sed 's/a23/ooCIo3 /g' >> a.dat -grep 'RHF' aD.dat | sed 's/RHF/0 /g' > aD_ooCI.dat -grep 'RHF' aD.dat | sed 's/RHF/1 /g' >> aD_ooCI.dat -grep 'ooCISD ' aD.dat | sed 's/ooCISD/2 /g' >> aD_ooCI.dat -grep 'ooCISDT' aD.dat | sed 's/ooCISDT/3 /g' >> aD_ooCI.dat +grep ^D fit.log | grep = | sed 's/=//g' | cut -c -30 > D0.dat +grep 'D0 ' D0.dat | sed 's/D0 /FCI /g' > D.dat +grep 'D1 ' D0.dat | sed 's/D1 /RHF /g' >> D.dat +grep 'D2 ' D0.dat | sed 's/D2 /hfCISD /g' >> D.dat +grep 'D3 ' D0.dat | sed 's/D3 /hfCISDT /g' >> D.dat +grep 'D4 ' D0.dat | sed 's/D4 /hfCISDTQ /g' >> D.dat +grep 'D5 ' D0.dat | sed 's/D5 /hfCIs0 /g' >> D.dat +grep 'D6 ' D0.dat | sed 's/D6 /hfCIs2 /g' >> D.dat +grep 'D7 ' D0.dat | sed 's/D7 /hfCIs4 /g' >> D.dat +grep 'D8 ' D0.dat | sed 's/D8 /hfCIo1 /g' >> D.dat +grep 'D9 ' D0.dat | sed 's/D9 /hfCIo1.5 /g' >> D.dat +grep 'D10 ' D0.dat | sed 's/D10/hfCIo2 /g' >> D.dat +grep 'D11 ' D0.dat | sed 's/D11/hfCIo2.5 /g' >> D.dat +grep 'D12 ' D0.dat | sed 's/D12/hfCIo3 /g' >> D.dat +grep 'D13 ' D0.dat | sed 's/D13/hfCIo3.5 /g' >> D.dat +grep 'D14 ' D0.dat | sed 's/D14/hfCIo4 /g' >> D.dat +grep 'D15 ' D0.dat | sed 's/D15/ooCISD /g' >> D.dat +grep 'D16 ' D0.dat | sed 's/D16/ooCISDT /g' >> D.dat +grep 'D17 ' D0.dat | sed 's/D17/ooCIs0 /g' >> D.dat +grep 'D18 ' D0.dat | sed 's/D18/ooCIs2 /g' >> D.dat +grep 'D19 ' D0.dat | sed 's/D19/ooCIo1 /g' >> D.dat +grep 'D20 ' D0.dat | sed 's/D20/ooCIo1.5 /g' >> D.dat +grep 'D21 ' D0.dat | sed 's/D21/ooCIo2 /g' >> D.dat +grep 'D22 ' D0.dat | sed 's/D22/ooCIo2.5 /g' >> D.dat +grep 'D23 ' D0.dat | sed 's/D23/ooCIo3 /g' >> D.dat -grep 'RHF' aD.dat | sed 's/RHF/0 /g' > aD_CIo.dat -grep 'hfCIo1 ' aD.dat | sed 's/hfCIo1/1 /g' >> aD_CIo.dat -grep 'hfCIo1.5' aD.dat | sed 's/hfCIo1.5/1.5 /g' >> aD_CIo.dat -grep 'hfCIo2 ' aD.dat | sed 's/hfCIo2/2 /g' >> aD_CIo.dat -grep 'hfCIo2.5' aD.dat | sed 's/hfCIo2.5/2.5 /g' >> aD_CIo.dat -grep 'hfCIo3 ' aD.dat | sed 's/hfCIo3/3 /g' >> aD_CIo.dat -grep 'hfCIo3.5' aD.dat | sed 's/hfCIo3.5/3.5 /g' >> aD_CIo.dat -grep 'hfCIo4 ' aD.dat | sed 's/hfCIo4/4 /g' >> aD_CIo.dat +if [[ $(grep 'a0 ' a0.dat) ]]; then grep '0 ' det_FCI.dat | cut -c 4- > det.dat; fi +if [[ $(grep 'a1 ' a0.dat) ]]; then grep '0 ' det_CI.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a2 ' a0.dat) ]]; then grep '2 ' det_CI.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a3 ' a0.dat) ]]; then grep '3 ' det_CI.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a4 ' a0.dat) ]]; then grep '4 ' det_CI.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a5 ' a0.dat) ]]; then grep '0 ' det_CIs.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a6 ' a0.dat) ]]; then grep '2 ' det_CIs.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a7 ' a0.dat) ]]; then grep '4 ' det_CIs.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a8 ' a0.dat) ]]; then grep '1 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a9 ' a0.dat) ]]; then grep '1.5 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a10 ' a0.dat) ]]; then grep '2 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a11 ' a0.dat) ]]; then grep '2.5 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a12 ' a0.dat) ]]; then grep '3 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a13 ' a0.dat) ]]; then grep '3.5 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a14 ' a0.dat) ]]; then grep '4 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a15 ' a0.dat) ]]; then grep '2 ' det_CI.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a16 ' a0.dat) ]]; then grep '3 ' det_CI.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a17 ' a0.dat) ]]; then grep '0 ' det_CIs.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a18 ' a0.dat) ]]; then grep '2 ' det_CIs.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a19 ' a0.dat) ]]; then grep '1 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a20 ' a0.dat) ]]; then grep '1.5 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a21 ' a0.dat) ]]; then grep '2 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a22 ' a0.dat) ]]; then grep '2.5 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a23 ' a0.dat) ]]; then grep '3 ' det_CIo.dat | cut -c 4- >> det.dat; fi -grep 'RHF' aD.dat | sed 's/RHF/0 /g' > aD_ooCIo.dat -grep 'ooCIo1 ' aD.dat | sed 's/ooCIo1/1 /g' >> aD_ooCIo.dat -grep 'ooCIo1.5' aD.dat | sed 's/ooCIo1.5/1.5 /g' >> aD_ooCIo.dat -grep 'ooCIo2 ' aD.dat | sed 's/ooCIo2/2 /g' >> aD_ooCIo.dat -grep 'ooCIo2.5' aD.dat | sed 's/ooCIo2.5/2.5 /g' >> aD_ooCIo.dat -grep 'ooCIo3 ' aD.dat | sed 's/ooCIo3/3 /g' >> aD_ooCIo.dat +paste det.dat a.dat D.dat > det_aD.dat + +grep 'FCI' det_aD.dat | sed 's/FCI/0 /g' > det_aD_FCI.dat +grep 'FCI' det_aD.dat | sed 's/FCI/1.0E10/g' >> det_aD_FCI.dat + +grep 'RHF' det_aD.dat | sed 's/RHF/0 /g' > det_aD_CI.dat +grep 'RHF' det_aD.dat | sed 's/RHF/1 /g' >> det_aD_CI.dat +grep 'hfCISD ' det_aD.dat | sed 's/hfCISD/2 /g' >> det_aD_CI.dat +grep 'hfCISDT ' det_aD.dat | sed 's/hfCISDT/3 /g' >> det_aD_CI.dat +grep 'hfCISDTQ' det_aD.dat | sed 's/hfCISDTQ/4 /g' >> det_aD_CI.dat + +grep 'RHF' det_aD.dat | sed 's/RHF/0 /g' > det_aD_ooCI.dat +grep 'RHF' det_aD.dat | sed 's/RHF/1 /g' >> det_aD_ooCI.dat +grep 'ooCISD ' det_aD.dat | sed 's/ooCISD/2 /g' >> det_aD_ooCI.dat +grep 'ooCISDT' det_aD.dat | sed 's/ooCISDT/3 /g' >> det_aD_ooCI.dat + +grep 'hfCIs0 ' det_aD.dat | sed 's/hfCIs0/0 /g' > det_aD_CIs.dat +grep 'hfCIs2 ' det_aD.dat | sed 's/hfCIs2/2 /g' >> det_aD_CIs.dat +grep 'hfCIs4 ' det_aD.dat | sed 's/hfCIs4/4 /g' >> det_aD_CIs.dat + +grep 'ooCIs0 ' det_aD.dat | sed 's/ooCIs0/0 /g' > det_aD_ooCIs.dat +grep 'ooCIs2 ' det_aD.dat | sed 's/ooCIs2/2 /g' >> det_aD_ooCIs.dat + +grep 'RHF' det_aD.dat | sed 's/RHF/0 /g' > det_aD_CIo.dat +grep 'hfCIo1 ' det_aD.dat | sed 's/hfCIo1/1 /g' >> det_aD_CIo.dat +grep 'hfCIo1.5' det_aD.dat | sed 's/hfCIo1.5/1.5 /g' >> det_aD_CIo.dat +grep 'hfCIo2 ' det_aD.dat | sed 's/hfCIo2/2 /g' >> det_aD_CIo.dat +grep 'hfCIo2.5' det_aD.dat | sed 's/hfCIo2.5/2.5 /g' >> det_aD_CIo.dat +grep 'hfCIo3 ' det_aD.dat | sed 's/hfCIo3/3 /g' >> det_aD_CIo.dat +grep 'hfCIo3.5' det_aD.dat | sed 's/hfCIo3.5/3.5 /g' >> det_aD_CIo.dat +grep 'hfCIo4 ' det_aD.dat | sed 's/hfCIo4/4 /g' >> det_aD_CIo.dat + +grep 'RHF' det_aD.dat | sed 's/RHF/0 /g' > det_aD_ooCIo.dat +grep 'ooCIo1 ' det_aD.dat | sed 's/ooCIo1/1 /g' >> det_aD_ooCIo.dat +grep 'ooCIo1.5' det_aD.dat | sed 's/ooCIo1.5/1.5 /g' >> det_aD_ooCIo.dat +grep 'ooCIo2 ' det_aD.dat | sed 's/ooCIo2/2 /g' >> det_aD_ooCIo.dat +grep 'ooCIo2.5' det_aD.dat | sed 's/ooCIo2.5/2.5 /g' >> det_aD_ooCIo.dat +grep 'ooCIo3 ' det_aD.dat | sed 's/ooCIo3/3 /g' >> det_aD_ooCIo.dat ####################################################################### ####################################################################### +grep ^xe fit.log | grep = | sed 's/=//g' | cut -c -30 > xe0.dat + grep ^xe fit.log | grep = | sed 's/=//g' | cut -c -30 | sed 's/xe0 /FCI /g' | sed 's/xe1 /RHF /g' | sed 's/xe2 /hfCISD /g' | sed 's/xe3 /hfCISDT /g' | sed 's/xe4 /hfCISDTQ /g' | - sed 's/xe5 /hfCIo1 /g' | - sed 's/xe6 /hfCIo1.5 /g' | - sed 's/xe7 /hfCIo2 /g' | - sed 's/xe8 /hfCIo2.5 /g' | - sed 's/xe9 /hfCIo3 /g' | - sed 's/xe10/hfCIo3.5 /g' | - sed 's/xe11/hfCIo4 /g' | - sed 's/xe12/ooCISD /g' | - sed 's/xe13/ooCISDT /g' | - sed 's/xe14/ooCIo1 /g' | - sed 's/xe15/ooCIo1.5 /g' | - sed 's/xe16/ooCIo2 /g' | - sed 's/xe17/ooCIo2.5 /g' | - sed 's/xe18/ooCIo3 /g' > xe.dat + sed 's/xe5 /hfCIs0 /g' | + sed 's/xe6 /hfCIs2 /g' | + sed 's/xe7 /hfCIs4 /g' | + sed 's/xe8 /hfCIo1 /g' | + sed 's/xe9 /hfCIo1.5 /g' | + sed 's/xe10/hfCIo2 /g' | + sed 's/xe11/hfCIo2.5 /g' | + sed 's/xe12/hfCIo3 /g' | + sed 's/xe13/hfCIo3.5 /g' | + sed 's/xe14/hfCIo4 /g' | + sed 's/xe15/ooCISD /g' | + sed 's/xe16/ooCISDT /g' | + sed 's/xe17/ooCIs0 /g' | + sed 's/xe18/ooCIs2 /g' | + sed 's/xe19/ooCIo1 /g' | + sed 's/xe20/ooCIo1.5 /g' | + sed 's/xe21/ooCIo2 /g' | + sed 's/xe22/ooCIo2.5 /g' | + sed 's/xe23/ooCIo3 /g' > xe.dat +paste det.dat xe.dat D.dat > det_xe.dat -grep 'FCI' xe.dat | sed 's/FCI/-0.1 /g' > xe_FCI.dat -grep 'FCI' xe.dat | sed 's/FCI/4.1 /g' >> xe_FCI.dat +grep 'FCI' det_xe.dat | sed 's/FCI/0 /g' > det_xe_FCI.dat +grep 'FCI' det_xe.dat | sed 's/FCI/1E10/g' >> det_xe_FCI.dat -grep 'RHF' xe.dat | sed 's/RHF/0 /g' > xe_CI.dat -grep 'RHF' xe.dat | sed 's/RHF/1 /g' >> xe_CI.dat -grep 'hfCISD ' xe.dat | sed 's/hfCISD/2 /g' >> xe_CI.dat -grep 'hfCISDT ' xe.dat | sed 's/hfCISDT/3 /g' >> xe_CI.dat -grep 'hfCISDTQ' xe.dat | sed 's/hfCISDTQ/4 /g' >> xe_CI.dat +grep 'RHF' det_xe.dat | sed 's/RHF/0 /g' > det_xe_CI.dat +grep 'RHF' det_xe.dat | sed 's/RHF/1 /g' >> det_xe_CI.dat +grep 'hfCISD ' det_xe.dat | sed 's/hfCISD/2 /g' >> det_xe_CI.dat +grep 'hfCISDT ' det_xe.dat | sed 's/hfCISDT/3 /g' >> det_xe_CI.dat +grep 'hfCISDTQ' det_xe.dat | sed 's/hfCISDTQ/4 /g' >> det_xe_CI.dat -grep 'RHF' xe.dat | sed 's/RHF/0 /g' > xe_ooCI.dat -grep 'RHF' xe.dat | sed 's/RHF/1 /g' >> xe_ooCI.dat -grep 'ooCISD ' xe.dat | sed 's/ooCISD/2 /g' >> xe_ooCI.dat -grep 'ooCISDT' xe.dat | sed 's/ooCISDT/3 /g' >> xe_ooCI.dat +grep 'RHF' det_xe.dat | sed 's/RHF/0 /g' > det_xe_ooCI.dat +grep 'RHF' det_xe.dat | sed 's/RHF/1 /g' >> det_xe_ooCI.dat +grep 'ooCISD ' det_xe.dat | sed 's/ooCISD/2 /g' >> det_xe_ooCI.dat +grep 'ooCISDT' det_xe.dat | sed 's/ooCISDT/3 /g' >> det_xe_ooCI.dat -grep 'RHF' xe.dat | sed 's/RHF/0 /g' > xe_CIo.dat -grep 'hfCIo1 ' xe.dat | sed 's/hfCIo1/1 /g' >> xe_CIo.dat -grep 'hfCIo1.5' xe.dat | sed 's/hfCIo1.5/1.5 /g' >> xe_CIo.dat -grep 'hfCIo2 ' xe.dat | sed 's/hfCIo2/2 /g' >> xe_CIo.dat -grep 'hfCIo2.5' xe.dat | sed 's/hfCIo2.5/2.5 /g' >> xe_CIo.dat -grep 'hfCIo3 ' xe.dat | sed 's/hfCIo3/3 /g' >> xe_CIo.dat -grep 'hfCIo3.5' xe.dat | sed 's/hfCIo3.5/3.5 /g' >> xe_CIo.dat -grep 'hfCIo4 ' xe.dat | sed 's/hfCIo4/4 /g' >> xe_CIo.dat +grep 'hfCIs0 ' det_xe.dat | sed 's/hfCIs0/0 /g' > det_xe_CIs.dat +grep 'hfCIs2 ' det_xe.dat | sed 's/hfCIs2/2 /g' >> det_xe_CIs.dat +grep 'hfCIs4 ' det_xe.dat | sed 's/hfCIs4/4 /g' >> det_xe_CIs.dat -grep 'RHF' xe.dat | sed 's/RHF/0 /g' > xe_ooCIo.dat -grep 'ooCIo1 ' xe.dat | sed 's/ooCIo1/1 /g' >> xe_ooCIo.dat -grep 'ooCIo1.5' xe.dat | sed 's/ooCIo1.5/1.5 /g' >> xe_ooCIo.dat -grep 'ooCIo2 ' xe.dat | sed 's/ooCIo2/2 /g' >> xe_ooCIo.dat -grep 'ooCIo2.5' xe.dat | sed 's/ooCIo2.5/2.5 /g' >> xe_ooCIo.dat -grep 'ooCIo3 ' xe.dat | sed 's/ooCIo3/3 /g' >> xe_ooCIo.dat +grep 'ooCIs0 ' det_xe.dat | sed 's/ooCIs0/0 /g' > det_xe_ooCIs.dat +grep 'ooCIs2 ' det_xe.dat | sed 's/ooCIs2/2 /g' >> det_xe_ooCIs.dat + +grep 'RHF' det_xe.dat | sed 's/RHF/0 /g' > det_xe_CIo.dat +grep 'hfCIo1 ' det_xe.dat | sed 's/hfCIo1/1 /g' >> det_xe_CIo.dat +grep 'hfCIo1.5' det_xe.dat | sed 's/hfCIo1.5/1.5 /g' >> det_xe_CIo.dat +grep 'hfCIo2 ' det_xe.dat | sed 's/hfCIo2/2 /g' >> det_xe_CIo.dat +grep 'hfCIo2.5' det_xe.dat | sed 's/hfCIo2.5/2.5 /g' >> det_xe_CIo.dat +grep 'hfCIo3 ' det_xe.dat | sed 's/hfCIo3/3 /g' >> det_xe_CIo.dat +grep 'hfCIo3.5' det_xe.dat | sed 's/hfCIo3.5/3.5 /g' >> det_xe_CIo.dat +grep 'hfCIo4 ' det_xe.dat | sed 's/hfCIo4/4 /g' >> det_xe_CIo.dat + +grep 'RHF' det_xe.dat | sed 's/RHF/0 /g' > det_xe_ooCIo.dat +grep 'ooCIo1 ' det_xe.dat | sed 's/ooCIo1/1 /g' >> det_xe_ooCIo.dat +grep 'ooCIo1.5' det_xe.dat | sed 's/ooCIo1.5/1.5 /g' >> det_xe_ooCIo.dat +grep 'ooCIo2 ' det_xe.dat | sed 's/ooCIo2/2 /g' >> det_xe_ooCIo.dat +grep 'ooCIo2.5' det_xe.dat | sed 's/ooCIo2.5/2.5 /g' >> det_xe_ooCIo.dat +grep 'ooCIo3 ' det_xe.dat | sed 's/ooCIo3/3 /g' >> det_xe_ooCIo.dat ####################################################################### diff --git a/F2_cc-pvdz/freq.gnu b/F2_cc-pvdz/freq.gnu index 28f7f0c..388a9f0 100644 --- a/F2_cc-pvdz/freq.gnu +++ b/F2_cc-pvdz/freq.gnu @@ -12,16 +12,21 @@ set encoding iso_8859_1 ################################################################################### ################################################################################### # SYSTEM DEPENDENT PART: -set xrange[-0.1:4.1] - +#set xrange[-0.1:4.1] +#set xtics 1 # VIEW 1: set yrange[600:1200] set ytics 100 #set format y "%.2f" -################################################################################### -################################################################################### -set xtics 1 +set xrange[1:1e10] +set logscale x +set format x "10^{%T}" +set xtics 10**3 +set mxtics 1 + +################################################################################### +################################################################################### set grid xtics ytics mxtics mytics #lc rgb 'blue' lt 1, lc rgb 'red' lt 1 @@ -35,13 +40,15 @@ if (!exists("MP_yGAP")) MP_yGAP = 0.08 set multiplot layout 1,2 rowsfirst \ margins screen MP_LEFT, MP_RIGHT, MP_BOTTOM, MP_TOP spacing screen MP_xGAP, MP_yGAP -set style line 1 dt 1 lw 3 linecolor rgb "gray60" -set style line 2 dt 1 lw 3 linecolor rgb "black" +set style line 1 dt 1 lw 2 linecolor rgb "gray60" +set style line 2 dt 1 lw 2 linecolor rgb "black" -set style line 3 dt 1 lw 3 linecolor rgb "light-red" pt 13 ps 2 -set style line 4 dt 1 lw 3 linecolor rgb "sea-green" pt 13 ps 2 -set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 -set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 +set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 +set style line 8 dt 1 lw 2 linecolor rgb "medium-blue" pt 13 ps 2 +set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 +set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 18 dt 1 lw 2 linecolor rgb "medium-blue" pt 7 ps 2 set xlabel 'Computational scaling' set ylabel "Vibrational frequency (cm^{-1})" @@ -64,17 +71,19 @@ fac = sqrt(hartree/mu)/(2.0*pi*c) * 0.01 * 10**10 ################################################################################### # SYSTEM DEPENDENT PART: -plot 'aD_FCI.dat' u 1:(sqrt(2*$4)*$2*fac) w l ls 2 notitle, \ - 'aD_CI.dat' u 1:(sqrt(2*$4)*$2*fac) w lp ls 3 notitle, \ - 'aD_CIo.dat' u 1:(sqrt(2*$4)*$2*fac) w lp ls 4 notitle +plot 'det_aD_FCI.dat' u 2:(sqrt(2*$5)*$3*fac) w l ls 2 notitle, \ + 'det_aD_CI.dat' u 1:(sqrt(2*$5)*$3*fac) w lp ls 3 notitle, \ + 'det_aD_CIs.dat' u 1:(sqrt(2*$5)*$3*fac) w lp ls 8 notitle, \ + 'det_aD_CIo.dat' u 1:(sqrt(2*$5)*$3*fac) w lp ls 4 notitle unset ylabel unset label set format y "" -plot 'aD_FCI.dat' u 1:(sqrt(2*$4)*$2*fac) w l ls 2 notitle, \ - 'aD_ooCI.dat' u 1:(sqrt(2*$4)*$2*fac) w lp ls 13 notitle, \ - 'aD_ooCIo.dat' u 1:(sqrt(2*$4)*$2*fac) w lp ls 14 notitle +plot 'det_aD_FCI.dat' u 2:(sqrt(2*$5)*$3*fac) w l ls 2 notitle, \ + 'det_aD_ooCI.dat' u 1:(sqrt(2*$5)*$3*fac) w lp ls 13 notitle, \ + 'det_aD_ooCIs.dat' u 1:(sqrt(2*$5)*$3*fac) w lp ls 18 notitle, \ + 'det_aD_ooCIo.dat' u 1:(sqrt(2*$5)*$3*fac) w lp ls 14 notitle ################################################################################### ################################################################################### diff --git a/F2_cc-pvdz/pes_ooCIo2.5.dat b/F2_cc-pvdz/pes_ooCIo2.5.dat index 3386e13..dd25455 100644 --- a/F2_cc-pvdz/pes_ooCIo2.5.dat +++ b/F2_cc-pvdz/pes_ooCIo2.5.dat @@ -7,9 +7,9 @@ 1.25 -199.05233009 1.3 -199.06640451 1.35 -199.07462221 -1.4 -199.07815751 -1.45 -199.07773953 -1.5 -199.07821879 +1.4 -199.07873690 +1.45 -199.07921423 +1.5 -199.07865537 1.55 -199.07544215 -1.6 -199.06868120 +1.6 -199.07250086 1.65 -199.06805953 diff --git a/F2_cc-pvdz/pes_ooCIs2.dat b/F2_cc-pvdz/pes_ooCIs2.dat index f63c552..469b967 100644 --- a/F2_cc-pvdz/pes_ooCIs2.dat +++ b/F2_cc-pvdz/pes_ooCIs2.dat @@ -1,4 +1,4 @@ -0.95 -198.47360249 +0.95 -198.53385600 1.0 -198.59991614 1.05 -198.68976232 1.1 -198.75332840 diff --git a/F2_cc-pvdz/pes_s4.dat b/F2_cc-pvdz/pes_s4.dat index d994387..1bab1a7 100644 --- a/F2_cc-pvdz/pes_s4.dat +++ b/F2_cc-pvdz/pes_s4.dat @@ -30,4 +30,18 @@ 3.1 -199.04172893 3.2 -199.04169377 3.3 -199.04169568 -3.4 -199.04174708 +3.4 -199.04166666 +3.5 -199.04160128 +4.0 -199.04180143 +4.5 -199.04183353 +5.0 -199.04184804 +5.5 -199.04185413 +6.0 -199.04185562 +6.5 -199.04185565 +7.0 -199.04185443 +7.5 -199.04185273 +8.0 -199.04185050 +8.5 -199.04184881 +9.0 -199.04184704 +9.5 -199.04184546 +10.0 -199.04184311 diff --git a/F2_cc-pvdz/plot_stat.gnu b/F2_cc-pvdz/plot_stat.gnu index f091491..0202185 100644 --- a/F2_cc-pvdz/plot_stat.gnu +++ b/F2_cc-pvdz/plot_stat.gnu @@ -6,20 +6,25 @@ set terminal postscript eps size 5.3,5.3 enhanced color \ font 'Helvetica,24' linewidth 2 set output 'plot_stat.eps' -set format y "10^{%T}" ################################################################################### ################################################################################### # SYSTEM DEPENDENT PART: -set xrange[-0.1:4.1] -set yrange[1e-3:1] - -################################################################################### -################################################################################### - -set xtics 1 -set mxtics 1 +#set xrange[-0.1:4.1] +#set yrange[1e-3:1] +set yrange[1e-3:2] set logscale y +#set format y "10^{%T}" + +set xrange[1:1e10] +set logscale x +set format x "10^{%T}" + +################################################################################### +################################################################################### + +set xtics 10**3 +set mxtics 1 set grid xtics ytics mxtics mytics #lc rgb 'blue' lt 1, lc rgb 'red' lt 1 @@ -33,19 +38,30 @@ if (!exists("MP_yGAP")) MP_yGAP = 0.08 set multiplot layout 1,2 rowsfirst \ margins screen MP_LEFT, MP_RIGHT, MP_BOTTOM, MP_TOP spacing screen MP_xGAP, MP_yGAP -set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 -set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 -set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 -set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 +set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 +set style line 8 dt 1 lw 2 linecolor rgb "medium-blue" pt 13 ps 2 +set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 +set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 18 dt 1 lw 2 linecolor rgb "medium-blue" pt 7 ps 2 -set xlabel 'Computational scaling' + +#set xlabel 'Computational scaling' +set xlabel 'Number of determinants' set ylabel 'Nonparallelity error (Hartree)' -plot 'stat_CI.dat' u 1:($2) w lp ls 3 notitle, \ - 'stat_CIo.dat' u 1:($2) w lp ls 4 notitle +plot 'stat_CI.dat' u ($3):($5) w lp ls 3 notitle, \ + 'stat_CIs.dat' u ($3):($5) w lp ls 8 notitle, \ + 'stat_CIo.dat' u ($3):($5) w lp ls 4 notitle +#plot 'stat_CI.dat' u 1:($2) w lp ls 3 notitle, \ +# 'stat_CIo.dat' u 1:($2) w lp ls 4 notitle unset ylabel unset label +set format y "" -plot 'stat_ooCI.dat' u 1:($2) w lp ls 13 notitle, \ - 'stat_ooCIo.dat' u 1:($2) w lp ls 14 notitle +plot 'stat_ooCI.dat' u ($3):($5) w lp ls 13 notitle, \ + 'stat_ooCIs.dat' u ($3):($5) w lp ls 18 notitle, \ + 'stat_ooCIo.dat' u ($3):($5) w lp ls 14 notitle +#plot 'stat_ooCI.dat' u 1:($2) w lp ls 13 notitle, \ +# 'stat_ooCIo.dat' u 1:($2) w lp ls 14 notitle diff --git a/F2_cc-pvdz/plot_stat.sh b/F2_cc-pvdz/plot_stat.sh index cc7e7e0..990baf2 100755 --- a/F2_cc-pvdz/plot_stat.sh +++ b/F2_cc-pvdz/plot_stat.sh @@ -1,9 +1,20 @@ #!/bin/bash -./compute_NPE.pl 1 8.0 -./compute_NPE.pl 2 8.0 -./compute_NPE.pl 3 8.0 -./compute_NPE.pl 4 8.0 +norbitals=26 +nelectrons=14 +xcut=8.0 + +if [ -f "input" ]; then + rm "input" +fi +echo "$nelectrons $norbitals" > input +../determinants/determinants.x < input +rm "input" + +for i in {1..6} +do +./compute_NPE.pl $i $xcut +done gnuplot plot_stat.gnu epspdf plot_stat.eps diff --git a/F2_cc-pvdz/xe.gnu b/F2_cc-pvdz/xe.gnu index 34eeb52..8134e10 100644 --- a/F2_cc-pvdz/xe.gnu +++ b/F2_cc-pvdz/xe.gnu @@ -13,6 +13,13 @@ set encoding iso_8859_1 ################################################################################### # SYSTEM DEPENDENT PART: set xrange[-0.1:4.1] +set xtics 1 + +set xrange[1:1e10] +set logscale x +set format x "10^{%T}" +set xtics 10**3 +set mxtics 1 # VIEW 1: set yrange[1.34:1.50] @@ -20,7 +27,6 @@ set format y "%.2f" ################################################################################### ################################################################################### -set xtics 1 set ytics 0.02 set grid xtics ytics mxtics mytics #lc rgb 'blue' lt 1, lc rgb 'red' lt 1 @@ -35,13 +41,15 @@ if (!exists("MP_yGAP")) MP_yGAP = 0.08 set multiplot layout 1,2 rowsfirst \ margins screen MP_LEFT, MP_RIGHT, MP_BOTTOM, MP_TOP spacing screen MP_xGAP, MP_yGAP -set style line 1 dt 1 lw 3 linecolor rgb "gray60" -set style line 2 dt 1 lw 3 linecolor rgb "black" +set style line 1 dt 1 lw 2 linecolor rgb "gray60" +set style line 2 dt 1 lw 2 linecolor rgb "black" -set style line 3 dt 1 lw 3 linecolor rgb "light-red" pt 13 ps 2 -set style line 4 dt 1 lw 3 linecolor rgb "sea-green" pt 13 ps 2 -set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 -set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 +set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 +set style line 8 dt 1 lw 2 linecolor rgb "medium-blue" pt 13 ps 2 +set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 +set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 18 dt 1 lw 2 linecolor rgb "medium-blue" pt 7 ps 2 set xlabel 'Computational scaling' set ylabel "Equilibrium distance ({\305})" @@ -50,9 +58,10 @@ set ylabel "Equilibrium distance ({\305})" ################################################################################### # SYSTEM DEPENDENT PART: -plot 'xe_FCI.dat' w l ls 2 notitle, \ - 'xe_CI.dat' w lp ls 3 notitle, \ - 'xe_CIo.dat' w lp ls 4 notitle#, \ +plot 'det_xe_FCI.dat' u 2:3 w l ls 2 notitle, \ + 'det_xe_CI.dat' u 1:3 w lp ls 3 notitle, \ + 'det_xe_CIs.dat' u 1:3 w lp ls 8 notitle, \ + 'det_xe_CIo.dat' u 1:3 w lp ls 4 notitle#, \ # 'xe_ooCI.dat' w lp ls 13 notitle, \ # 'xe_ooCIo.dat' w lp ls 14 notitle @@ -60,9 +69,10 @@ unset ylabel unset label set format y "" -plot 'xe_FCI.dat' w l ls 2 notitle, \ - 'xe_ooCI.dat' w lp ls 13 notitle, \ - 'xe_ooCIo.dat' w lp ls 14 notitle +plot 'det_xe_FCI.dat' u 2:3 w l ls 2 notitle, \ + 'det_xe_ooCI.dat' u 1:3 w lp ls 13 notitle, \ + 'det_xe_ooCIs.dat' u 1:3 w lp ls 18 notitle, \ + 'det_xe_ooCIo.dat' u 1:3 w lp ls 14 notitle ################################################################################### ################################################################################### diff --git a/H8_cc-pvdz/compute_NPE.pl b/H8_cc-pvdz/compute_NPE.pl index 9a74955..388f3a5 100755 --- a/H8_cc-pvdz/compute_NPE.pl +++ b/H8_cc-pvdz/compute_NPE.pl @@ -7,28 +7,44 @@ use List::Util qw(min max); my $case = $ARGV[0]; my $xcut = $ARGV[1]; -my(@files,@index,$outfile); +my(@files,@index,$detfile,$outfile); if($case==1){ @files = qw( pes_rhf.dat pes_CIo1.dat pes_CIo1.5.dat pes_CIo2.dat pes_CIo2.5.dat pes_CIo3.dat pes_CIo3.5.dat pes_CIo4.dat); @index = qw( 0 1 1.5 2 2.5 3 3.5 4); +$detfile = "det_CIo.dat"; $outfile = "stat_CIo.dat"; } elsif($case==2){ @files = qw( pes_rhf.dat pes_ooCIo1.dat pes_ooCIo1.5.dat pes_ooCIo2.dat pes_ooCIo2.5.dat pes_ooCIo3.dat pes_ooCIo3.5.dat pes_ooCIo4.dat); @index = qw( 0 1 1.5 2 2.5 3 3.5 4); +$detfile = "det_CIo.dat"; $outfile = "stat_ooCIo.dat"; } elsif($case==3){ @files = qw( pes_rhf.dat pes_rhf.dat pes_CISD.dat pes_CISDT.dat pes_CISDTQ.dat); @index = qw( 0 1 2 3 4); +$detfile = "det_CI.dat"; $outfile = "stat_CI.dat"; } elsif($case==4){ -@files = qw( pes_rhf.dat pes_rhf.dat pes_ooCISD.dat pes_ooCISDT.dat); -@index = qw( 0 1 2 3); +@files = qw( pes_rhf.dat pes_rhf.dat pes_ooCISD.dat pes_ooCISDT.dat pes_ooCISDTQ.dat); +@index = qw( 0 1 2 3 4); +$detfile = "det_CI.dat"; $outfile = "stat_ooCI.dat"; } +elsif($case==5){ +@files = qw( pes_s0.dat pes_s2.dat pes_s4.dat); +@index = qw( 0 2 4); +$detfile = "det_CIs.dat"; +$outfile = "stat_CIs.dat"; +} +elsif($case==6){ +@files = qw( pes_ooCIs0.dat pes_ooCIs2.dat pes_ooCIs4.dat); +@index = qw( 0 2 4); +$detfile = "det_CIs.dat"; +$outfile = "stat_ooCIs.dat"; +} else{ print "case variable not recognized \n"; die; @@ -53,6 +69,17 @@ open(Fi, '<', $fci_file) or die $!; } close(Fi); +my(@index2,@det); +my $k=0; +open(Fi, '<', $detfile) or die $!; + while(){ + my @line = split( /\s+/, $_ ); + $index2[$k] = $line[0]; + $det[$k] = $line[1]; + $k++; + } +close(Fi); + if(-e $outfile){unlink $outfile}; open(Fo, '>>', $outfile) or die $!; @@ -88,7 +115,7 @@ close(Fi); if($x==$xcut){ my $npe = $maxy - $miny; my $closeness = $maxy + $miny; - print Fo "$index[$j] $npe $closeness $maxy $miny \n"; + print Fo "$index[$j] $index2[$j] $det[$j] $npe $closeness $maxy $miny \n"; } # } diff --git a/H8_cc-pvdz/fit_eq_1.sh b/H8_cc-pvdz/fit_eq_1.sh new file mode 100755 index 0000000..753c081 --- /dev/null +++ b/H8_cc-pvdz/fit_eq_1.sh @@ -0,0 +1,62 @@ +#!/bin/bash + +if [ -f "fit.log" ]; then + rm "fit.log" +fi + +gnuplot fit_eq.gnu + +grep ^xe fit.log | grep = | sed 's/=//g' | cut -c -30 | + sed 's/xe0 /FCI /g' | + sed 's/xe1 /RHF /g' | + sed 's/xe2 /hfCISD /g' | + sed 's/xe3 /hfCISDT /g' | + sed 's/xe4 /hfCISDTQ /g' | + sed 's/xe5 /hfCIo1 /g' | + sed 's/xe6 /hfCIo1.5 /g' | + sed 's/xe7 /hfCIo2 /g' | + sed 's/xe8 /hfCIo2.5 /g' | + sed 's/xe9 /hfCIo3 /g' | + sed 's/xe10/hfCIo3.5 /g' | + sed 's/xe11/hfCIo4 /g' | + sed 's/xe12/ooCISD /g' | + sed 's/xe13/ooCISDT /g' | + sed 's/xe14/ooCIo1 /g' | + sed 's/xe15/ooCIo1.5 /g' | + sed 's/xe16/ooCIo2 /g' | + sed 's/xe17/ooCIo2.5 /g' | + sed 's/xe18/ooCIo3 /g' > xe.dat + + +grep 'FCI' xe.dat | sed 's/FCI/-0.1 /g' > xe_FCI.dat +grep 'FCI' xe.dat | sed 's/FCI/4.1 /g' >> xe_FCI.dat + +grep 'RHF' xe.dat | sed 's/RHF/0 /g' > xe_CI.dat +grep 'RHF' xe.dat | sed 's/RHF/1 /g' >> xe_CI.dat +grep 'hfCISD ' xe.dat | sed 's/hfCISD/2 /g' >> xe_CI.dat +grep 'hfCISDT ' xe.dat | sed 's/hfCISDT/3 /g' >> xe_CI.dat +grep 'hfCISDTQ' xe.dat | sed 's/hfCISDTQ/4 /g' >> xe_CI.dat + +grep 'RHF' xe.dat | sed 's/RHF/0 /g' > xe_ooCI.dat +grep 'RHF' xe.dat | sed 's/RHF/1 /g' >> xe_ooCI.dat +grep 'ooCISD ' xe.dat | sed 's/ooCISD/2 /g' >> xe_ooCI.dat +grep 'ooCISDT' xe.dat | sed 's/ooCISDT/3 /g' >> xe_ooCI.dat + +grep 'RHF' xe.dat | sed 's/RHF/0 /g' > xe_CIo.dat +grep 'hfCIo1 ' xe.dat | sed 's/hfCIo1/1 /g' >> xe_CIo.dat +grep 'hfCIo1.5' xe.dat | sed 's/hfCIo1.5/1.5 /g' >> xe_CIo.dat +grep 'hfCIo2 ' xe.dat | sed 's/hfCIo2/2 /g' >> xe_CIo.dat +grep 'hfCIo2.5' xe.dat | sed 's/hfCIo2.5/2.5 /g' >> xe_CIo.dat +grep 'hfCIo3 ' xe.dat | sed 's/hfCIo3/3 /g' >> xe_CIo.dat +grep 'hfCIo3.5' xe.dat | sed 's/hfCIo3.5/3.5 /g' >> xe_CIo.dat +grep 'hfCIo4 ' xe.dat | sed 's/hfCIo4/4 /g' >> xe_CIo.dat + +grep 'RHF' xe.dat | sed 's/RHF/0 /g' > xe_ooCIo.dat +grep 'ooCIo1 ' xe.dat | sed 's/ooCIo1/1 /g' >> xe_ooCIo.dat +grep 'ooCIo1.5' xe.dat | sed 's/ooCIo1.5/1.5 /g' >> xe_ooCIo.dat +grep 'ooCIo2 ' xe.dat | sed 's/ooCIo2/2 /g' >> xe_ooCIo.dat +grep 'ooCIo2.5' xe.dat | sed 's/ooCIo2.5/2.5 /g' >> xe_ooCIo.dat +grep 'ooCIo3 ' xe.dat | sed 's/ooCIo3/3 /g' >> xe_ooCIo.dat + +#epspdf fit_eq.eps +#okular fit_eq.pdf diff --git a/H8_cc-pvdz/pes_CISDT.dat b/H8_cc-pvdz/pes_CISDT.dat index f9f8715..0f9c945 100644 --- a/H8_cc-pvdz/pes_CISDT.dat +++ b/H8_cc-pvdz/pes_CISDT.dat @@ -49,25 +49,25 @@ 5.2 -3.80227247 5.3 -3.79790545 5.4 -3.79377762 -5.5 -3.70118270 -5.6 -3.69160831 -5.7 -3.68247161 -5.8 -3.67375241 -5.9 -3.66543153 -6.0 -3.65749137 -6.1 -3.64991449 -6.2 -3.64268460 -6.3 -3.63578649 -6.4 -3.62920508 -6.5 -3.62292687 -6.6 -3.61693793 -6.7 -3.61122552 -6.8 -3.60577757 -6.9 -3.60058208 -7.0 -3.59562837 -7.5 -3.57411514 -8.0 -3.55716798 -8.5 -3.54376816 -9.0 -3.53307881 +5.5 -3.78987598 +5.6 -3.78618285 +5.7 -3.78268568 +5.8 -3.77937319 +5.9 -3.77623530 +6.0 -3.77325964 +6.1 -3.77043606 +6.2 -3.76776205 +6.3 -3.76522140 +6.4 -3.76281477 +6.5 -3.76052795 +6.6 -3.75835436 +6.7 -3.75629145 +6.8 -3.75432849 +6.9 -3.75246270 +7.0 -3.75068570 +7.5 -3.74296632 +8.0 -3.73677963 +8.5 -3.73170826 +9.0 -3.72746639 9.5 -3.72369339 10.0 -3.72074273 diff --git a/H8_cc-pvdz/pes_ooCIo1.dat b/H8_cc-pvdz/pes_ooCIo1.dat index 7fb2aac..ea0a86d 100644 --- a/H8_cc-pvdz/pes_ooCIo1.dat +++ b/H8_cc-pvdz/pes_ooCIo1.dat @@ -14,6 +14,7 @@ 2.0 -4.40806201 2.05 -4.39888245 2.1 -4.38844701 +2.15 -4.37697013 2.2 -4.36463605 2.25 -4.35160645 2.3 -4.33802093 @@ -31,7 +32,7 @@ 3.5 -4.00429701 3.6 -3.98153578 3.7 -3.95973517 -3.8 -3.73769107 +3.8 -3.93886696 3.9 -3.91889778 4.0 -3.84192657 4.1 -3.82337756 @@ -48,12 +49,12 @@ 5.2 -3.67879991 5.3 -3.66936313 5.4 -3.66039339 -5.5 -3.39679896 +5.5 -3.65186608 5.6 -3.64375808 -5.7 -3.63632979 +5.7 -3.63604857 5.8 -3.62871700 5.9 -3.62174416 -6.0 -3.61511232 +6.0 -3.61511226 6.1 -3.60880392 6.2 -3.60280341 6.3 -3.59709486 diff --git a/H8_cc-pvdz/plot_pes.gnu b/H8_cc-pvdz/plot_pes.gnu index 5661fb5..8a859ef 100644 --- a/H8_cc-pvdz/plot_pes.gnu +++ b/H8_cc-pvdz/plot_pes.gnu @@ -68,9 +68,9 @@ f(x) = a*x+b fit [3.0:4.0] [*:*] f(x) 'pes_rhf.dat' u 1:($2) via a,b set label 1 'RHF' at 3.0,-3.810 rotate by r(a) center tc ls 1 #font 'Verdana,20' fit [6.5:7.5] [*:*] f(x) 'pes_CISD.dat' u 1:($2) via a,b -set label 2 'CISD' at 7.0,-3.562 rotate by r(a) center tc ls 3 #font 'Verdana,20' +set label 2 'CISD' at 7.1,-3.560 rotate by r(a) center tc ls 3 #font 'Verdana,20' fit [6.5:7.5] [*:*] f(x) 'pes_CISDT.dat' u 1:($2) via a,b -set label 3 'CISDT' at 7.0,-3.700 rotate by r(a) center tc ls 3 #font 'Verdana,20' +set label 3 'CISDT' at 7.1,-3.724 rotate by r(a) center tc ls 3 #font 'Verdana,20' fit [6.0:7.5] [*:*] f(x) 'pes_CISDTQ.dat' u 1:($2) via a,b set label 4 'CISDTQ' at 6.0,-3.970 rotate by r(a) center tc ls 3 #font 'Verdana,20' #fit [6.0:8.0] [*:*] f(x) 'pes_CIo1.dat' u 1:($2) via a,b diff --git a/H8_cc-pvdz/plot_stat.gnu b/H8_cc-pvdz/plot_stat.gnu index d6c925c..807ec22 100644 --- a/H8_cc-pvdz/plot_stat.gnu +++ b/H8_cc-pvdz/plot_stat.gnu @@ -10,16 +10,21 @@ set output 'plot_stat.eps' ################################################################################### ################################################################################### # SYSTEM DEPENDENT PART: -set xrange[-0.1:4.1] -set yrange[0.0:0.6] +#set xrange[-0.1:4.1] +#set yrange[0.0:0.6] +set yrange[0.0:1.0] #set yrange[1e-1:1] #set logscale y #set format y "10^{%T}" +set xrange[1:1e9] +set logscale x +set format x "10^{%T}" + ################################################################################### ################################################################################### -set xtics 1 +set xtics 10**3 set mxtics 1 set grid xtics ytics mxtics mytics #lc rgb 'blue' lt 1, lc rgb 'red' lt 1 @@ -34,20 +39,30 @@ if (!exists("MP_yGAP")) MP_yGAP = 0.08 set multiplot layout 1,2 rowsfirst \ margins screen MP_LEFT, MP_RIGHT, MP_BOTTOM, MP_TOP spacing screen MP_xGAP, MP_yGAP -set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 -set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 -set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 -set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 +set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 +set style line 8 dt 1 lw 2 linecolor rgb "medium-blue" pt 13 ps 2 +set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 +set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 18 dt 1 lw 2 linecolor rgb "medium-blue" pt 7 ps 2 -set xlabel 'Computational scaling' + +#set xlabel 'Computational scaling' +set xlabel 'Number of determinants' set ylabel 'Nonparallelity error (Hartree)' -plot 'stat_CI.dat' u 1:($2) w lp ls 3 notitle, \ - 'stat_CIo.dat' u 1:($2) w lp ls 4 notitle +plot 'stat_CI.dat' u ($3):($4) w lp ls 3 notitle, \ + 'stat_CIs.dat' u ($3):($4) w lp ls 8 notitle, \ + 'stat_CIo.dat' u ($3):($4) w lp ls 4 notitle +#plot 'stat_CI.dat' u 1:($2) w lp ls 3 notitle, \ +# 'stat_CIo.dat' u 1:($2) w lp ls 4 notitle unset ylabel unset label set format y "" -plot 'stat_ooCI.dat' u 1:($2) w lp ls 13 notitle, \ - 'stat_ooCIo.dat' u 1:($2) w lp ls 14 notitle +plot 'stat_ooCI.dat' u ($3):($4) w lp ls 13 notitle, \ + 'stat_ooCIo.dat' u ($3):($4) w lp ls 14 notitle +# 'stat_ooCIs.dat' u ($3):($4) w lp ls 18 notitle, \ +#plot 'stat_ooCI.dat' u 1:($2) w lp ls 13 notitle, \ +# 'stat_ooCIo.dat' u 1:($2) w lp ls 14 notitle diff --git a/H8_cc-pvdz/plot_stat.sh b/H8_cc-pvdz/plot_stat.sh index fab981e..a149690 100755 --- a/H8_cc-pvdz/plot_stat.sh +++ b/H8_cc-pvdz/plot_stat.sh @@ -1,9 +1,22 @@ #!/bin/bash -./compute_NPE.pl 1 6.0 -./compute_NPE.pl 2 6.0 -./compute_NPE.pl 3 6.0 -./compute_NPE.pl 4 6.0 +norbitals=40 +nelectrons=8 +#xcut=4.9 +#xcut=6.0 +xcut=10.0 + +if [ -f "input" ]; then + rm "input" +fi +echo "$nelectrons $norbitals" > input +../determinants/determinants.x < input +rm "input" + +for i in {1..6} +do +./compute_NPE.pl $i $xcut +done gnuplot plot_stat.gnu epspdf plot_stat.eps diff --git a/HF_cc-pvdz/pes_ooCIs0.dat b/HF_cc-pvdz/pes_ooCIs0.dat index dca6c26..0cd8b65 100644 --- a/HF_cc-pvdz/pes_ooCIs0.dat +++ b/HF_cc-pvdz/pes_ooCIs0.dat @@ -1,12 +1,12 @@ 0.5 -99.39437243 0.55 -99.64745701 0.6 -99.81729154 -0.65 -99.92710105 +0.65 -99.93039871 0.7 -100.00457312 0.75 -100.05159744 0.8 -100.07964995 0.85 -100.09445639 -0.9 -100.09530277 +0.9 -100.10004488 0.95 -100.09928717 1.0 -100.09422371 1.05 -100.08630236 diff --git a/N2_cc-pvdz/compute_NPE.pl b/N2_cc-pvdz/compute_NPE.pl index 9a74955..388f3a5 100755 --- a/N2_cc-pvdz/compute_NPE.pl +++ b/N2_cc-pvdz/compute_NPE.pl @@ -7,28 +7,44 @@ use List::Util qw(min max); my $case = $ARGV[0]; my $xcut = $ARGV[1]; -my(@files,@index,$outfile); +my(@files,@index,$detfile,$outfile); if($case==1){ @files = qw( pes_rhf.dat pes_CIo1.dat pes_CIo1.5.dat pes_CIo2.dat pes_CIo2.5.dat pes_CIo3.dat pes_CIo3.5.dat pes_CIo4.dat); @index = qw( 0 1 1.5 2 2.5 3 3.5 4); +$detfile = "det_CIo.dat"; $outfile = "stat_CIo.dat"; } elsif($case==2){ @files = qw( pes_rhf.dat pes_ooCIo1.dat pes_ooCIo1.5.dat pes_ooCIo2.dat pes_ooCIo2.5.dat pes_ooCIo3.dat pes_ooCIo3.5.dat pes_ooCIo4.dat); @index = qw( 0 1 1.5 2 2.5 3 3.5 4); +$detfile = "det_CIo.dat"; $outfile = "stat_ooCIo.dat"; } elsif($case==3){ @files = qw( pes_rhf.dat pes_rhf.dat pes_CISD.dat pes_CISDT.dat pes_CISDTQ.dat); @index = qw( 0 1 2 3 4); +$detfile = "det_CI.dat"; $outfile = "stat_CI.dat"; } elsif($case==4){ -@files = qw( pes_rhf.dat pes_rhf.dat pes_ooCISD.dat pes_ooCISDT.dat); -@index = qw( 0 1 2 3); +@files = qw( pes_rhf.dat pes_rhf.dat pes_ooCISD.dat pes_ooCISDT.dat pes_ooCISDTQ.dat); +@index = qw( 0 1 2 3 4); +$detfile = "det_CI.dat"; $outfile = "stat_ooCI.dat"; } +elsif($case==5){ +@files = qw( pes_s0.dat pes_s2.dat pes_s4.dat); +@index = qw( 0 2 4); +$detfile = "det_CIs.dat"; +$outfile = "stat_CIs.dat"; +} +elsif($case==6){ +@files = qw( pes_ooCIs0.dat pes_ooCIs2.dat pes_ooCIs4.dat); +@index = qw( 0 2 4); +$detfile = "det_CIs.dat"; +$outfile = "stat_ooCIs.dat"; +} else{ print "case variable not recognized \n"; die; @@ -53,6 +69,17 @@ open(Fi, '<', $fci_file) or die $!; } close(Fi); +my(@index2,@det); +my $k=0; +open(Fi, '<', $detfile) or die $!; + while(){ + my @line = split( /\s+/, $_ ); + $index2[$k] = $line[0]; + $det[$k] = $line[1]; + $k++; + } +close(Fi); + if(-e $outfile){unlink $outfile}; open(Fo, '>>', $outfile) or die $!; @@ -88,7 +115,7 @@ close(Fi); if($x==$xcut){ my $npe = $maxy - $miny; my $closeness = $maxy + $miny; - print Fo "$index[$j] $npe $closeness $maxy $miny \n"; + print Fo "$index[$j] $index2[$j] $det[$j] $npe $closeness $maxy $miny \n"; } # } diff --git a/N2_cc-pvdz/fit_eq.gnu b/N2_cc-pvdz/fit_eq.gnu index 0b59b97..bc7710b 100644 --- a/N2_cc-pvdz/fit_eq.gnu +++ b/N2_cc-pvdz/fit_eq.gnu @@ -23,15 +23,17 @@ set yrange[-109.30:-108.30] set format y "%.1f" -set style line 1 dt 1 lw 3 linecolor rgb "gray60" -set style line 2 dt 1 lw 3 linecolor rgb "black" -set style line 9 dt 1 lw 2 linecolor rgb "violet" -set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 -set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 -set style line 5 dt 2 lw 2 linecolor rgb "sea-green" pt 13 ps 2 -set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 -set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 -set style line 15 dt 2 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 1 dt 1 lw 3 linecolor rgb "gray60" +set style line 2 dt 1 lw 3 linecolor rgb "black" +set style line 9 dt 1 lw 2 linecolor rgb "violet" +set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 +set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 +set style line 5 dt 2 lw 2 linecolor rgb "sea-green" pt 13 ps 2 +set style line 8 dt 1 lw 2 linecolor rgb "medium-blue" pt 13 ps 2 +set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 +set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 15 dt 2 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 18 dt 1 lw 2 linecolor rgb "medium-blue" pt 7 ps 2 set xlabel "Distance ({\305})" set ylabel 'Energy (Hartree)' @@ -57,6 +59,11 @@ D15=0.0;a15=1.0;xe15=1.0;C15=0.0 D16=0.0;a16=1.0;xe16=1.0;C16=0.0 D17=0.0;a17=1.0;xe17=1.0;C17=0.0 D18=0.0;a18=1.0;xe18=1.0;C18=0.0 +D19=0.0;a19=1.0;xe19=1.0;C19=0.0 +D20=0.0;a20=1.0;xe20=1.0;C20=0.0 +D21=0.0;a21=1.0;xe21=1.0;C21=0.0 +D22=0.0;a22=1.0;xe22=1.0;C22=0.0 +D23=0.0;a23=1.0;xe23=1.0;C23=0.0 # function for fitting @@ -111,7 +118,7 @@ fit [xmin:xmax] [*:*] f4(x) filename u 1:($2) via D4,a4,xe4,C4 } f5(x) = D5*(1-exp(-a5*(x-xe5)))**2+C5 -filename='pes_CIo1.dat' +filename='pes_s0.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a5=1.0; xe5=STATS_pos_min_y; C5=STATS_min_y @@ -121,7 +128,7 @@ fit [xmin:xmax] [*:*] f5(x) filename u 1:($2) via D5,a5,xe5,C5 } f6(x) = D6*(1-exp(-a6*(x-xe6)))**2+C6 -filename='pes_CIo1.5.dat' +filename='pes_s2.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a6=1.0; xe6=STATS_pos_min_y; C6=STATS_min_y @@ -131,7 +138,7 @@ fit [xmin:xmax] [*:*] f6(x) filename u 1:($2) via D6,a6,xe6,C6 } f7(x) = D7*(1-exp(-a7*(x-xe7)))**2+C7 -filename='pes_CIo2.dat' +filename='pes_s4.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a7=1.0; xe7=STATS_pos_min_y; C7=STATS_min_y @@ -141,7 +148,7 @@ fit [xmin:xmax] [*:*] f7(x) filename u 1:($2) via D7,a7,xe7,C7 } f8(x) = D8*(1-exp(-a8*(x-xe8)))**2+C8 -filename='pes_CIo2.5.dat' +filename='pes_CIo1.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a8=1.0; xe8=STATS_pos_min_y; C8=STATS_min_y @@ -151,7 +158,7 @@ fit [xmin:xmax] [*:*] f8(x) filename u 1:($2) via D8,a8,xe8,C8 } f9(x) = D9*(1-exp(-a9*(x-xe9)))**2+C9 -filename='pes_CIo3.dat' +filename='pes_CIo1.5.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a9=1.0; xe9=STATS_pos_min_y; C9=STATS_min_y @@ -161,7 +168,7 @@ fit [xmin:xmax] [*:*] f9(x) filename u 1:($2) via D9,a9,xe9,C9 } f10(x) = D10*(1-exp(-a10*(x-xe10)))**2+C10 -filename='pes_CIo3.5.dat' +filename='pes_CIo2.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a10=1.0; xe10=STATS_pos_min_y; C10=STATS_min_y @@ -171,7 +178,7 @@ fit [xmin:xmax] [*:*] f10(x) filename u 1:($2) via D10,a10,xe10,C10 } f11(x) = D11*(1-exp(-a11*(x-xe11)))**2+C11 -filename='pes_CIo4.dat' +filename='pes_CIo2.5.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a11=1.0; xe11=STATS_pos_min_y; C11=STATS_min_y @@ -181,7 +188,7 @@ fit [xmin:xmax] [*:*] f11(x) filename u 1:($2) via D11,a11,xe11,C11 } f12(x) = D12*(1-exp(-a12*(x-xe12)))**2+C12 -filename='pes_ooCISD.dat' +filename='pes_CIo3.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a12=1.0; xe12=STATS_pos_min_y; C12=STATS_min_y @@ -191,7 +198,7 @@ fit [xmin:xmax] [*:*] f12(x) filename u 1:($2) via D12,a12,xe12,C12 } f13(x) = D13*(1-exp(-a13*(x-xe13)))**2+C13 -filename='pes_ooCISDT.dat' +filename='pes_CIo3.5.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a13=1.0; xe13=STATS_pos_min_y; C13=STATS_min_y @@ -201,7 +208,7 @@ fit [xmin:xmax] [*:*] f13(x) filename u 1:($2) via D13,a13,xe13,C13 } f14(x) = D14*(1-exp(-a14*(x-xe14)))**2+C14 -filename='pes_ooCIo1.dat' +filename='pes_CIo4.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a14=1.0; xe14=STATS_pos_min_y; C14=STATS_min_y @@ -211,7 +218,7 @@ fit [xmin:xmax] [*:*] f14(x) filename u 1:($2) via D14,a14,xe14,C14 } f15(x) = D15*(1-exp(-a15*(x-xe15)))**2+C15 -filename='pes_ooCIo1.5.dat' +filename='pes_ooCISD.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a15=1.0; xe15=STATS_pos_min_y; C15=STATS_min_y @@ -221,7 +228,7 @@ fit [xmin:xmax] [*:*] f15(x) filename u 1:($2) via D15,a15,xe15,C15 } f16(x) = D16*(1-exp(-a16*(x-xe16)))**2+C16 -filename='pes_ooCIo2.dat' +filename='pes_ooCISDT.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a16=1.0; xe16=STATS_pos_min_y; C16=STATS_min_y @@ -231,7 +238,7 @@ fit [xmin:xmax] [*:*] f16(x) filename u 1:($2) via D16,a16,xe16,C16 } f17(x) = D17*(1-exp(-a17*(x-xe17)))**2+C17 -filename='pes_ooCIo2.5.dat' +filename='pes_ooCIs0.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a17=1.0; xe17=STATS_pos_min_y; C17=STATS_min_y @@ -241,7 +248,7 @@ fit [xmin:xmax] [*:*] f17(x) filename u 1:($2) via D17,a17,xe17,C17 } f18(x) = D18*(1-exp(-a18*(x-xe18)))**2+C18 -filename='pes_ooCIo3.dat' +filename='pes_ooCIs2.dat' if ( file_exists(filename) ){ stats filename using 1:2 nooutput a18=1.0; xe18=STATS_pos_min_y; C18=STATS_min_y @@ -250,48 +257,108 @@ D18=last_y-C18 fit [xmin:xmax] [*:*] f18(x) filename u 1:($2) via D18,a18,xe18,C18 } +f19(x) = D19*(1-exp(-a19*(x-xe19)))**2+C19 +filename='pes_ooCIo1.dat' +if ( file_exists(filename) ){ +stats filename using 1:2 nooutput +a19=1.0; xe19=STATS_pos_min_y; C19=STATS_min_y +stats filename using 1:(last_y=$2) every ::STATS_records-1::STATS_records-1 nooutput +D19=last_y-C19 +fit [xmin:xmax] [*:*] f19(x) filename u 1:($2) via D19,a19,xe19,C19 +} + +f20(x) = D20*(1-exp(-a20*(x-xe20)))**2+C20 +filename='pes_ooCIo1.5.dat' +if ( file_exists(filename) ){ +stats filename using 1:2 nooutput +a20=1.0; xe20=STATS_pos_min_y; C20=STATS_min_y +stats filename using 1:(last_y=$2) every ::STATS_records-1::STATS_records-1 nooutput +D20=last_y-C20 +fit [xmin:xmax] [*:*] f20(x) filename u 1:($2) via D20,a20,xe20,C20 +} + +f21(x) = D21*(1-exp(-a21*(x-xe21)))**2+C21 +filename='pes_ooCIo2.dat' +if ( file_exists(filename) ){ +stats filename using 1:2 nooutput +a21=1.0; xe21=STATS_pos_min_y; C21=STATS_min_y +stats filename using 1:(last_y=$2) every ::STATS_records-1::STATS_records-1 nooutput +D21=last_y-C21 +fit [xmin:xmax] [*:*] f21(x) filename u 1:($2) via D21,a21,xe21,C21 +} + +f22(x) = D22*(1-exp(-a22*(x-xe22)))**2+C22 +filename='pes_ooCIo2.5.dat' +if ( file_exists(filename) ){ +stats filename using 1:2 nooutput +a22=1.0; xe22=STATS_pos_min_y; C22=STATS_min_y +stats filename using 1:(last_y=$2) every ::STATS_records-1::STATS_records-1 nooutput +D22=last_y-C22 +fit [xmin:xmax] [*:*] f22(x) filename u 1:($2) via D22,a22,xe22,C22 +} + +f23(x) = D23*(1-exp(-a23*(x-xe23)))**2+C23 +filename='pes_ooCIo3.dat' +if ( file_exists(filename) ){ +stats filename using 1:2 nooutput +a23=1.0; xe23=STATS_pos_min_y; C23=STATS_min_y +stats filename using 1:(last_y=$2) every ::STATS_records-1::STATS_records-1 nooutput +D23=last_y-C23 +fit [xmin:xmax] [*:*] f23(x) filename u 1:($2) via D23,a23,xe23,C23 +} + ################################################################################### ################################################################################### # SYSTEM DEPENDENT PART: -plot 'pes_rhf.dat' w lp ls 1 notitle, \ - 'pes_CISD.dat' w lp ls 3 notitle, \ - 'pes_CISDT.dat' w lp ls 3 notitle, \ - 'pes_CISDTQ.dat' w lp ls 3 notitle, \ - 'pes_CIo1.dat' w lp ls 4 notitle, \ - 'pes_CIo1.5.dat' w lp ls 5 notitle, \ - 'pes_CIo2.dat' w lp ls 4 notitle, \ - 'pes_CIo2.5.dat' w lp ls 5 notitle, \ - 'pes_CIo3.dat' w lp ls 4 notitle, \ - 'pes_CIo3.5.dat' w lp ls 5 notitle, \ - 'pes_CIo4.dat' w lp ls 4 notitle, \ - 'pes_ooCISD.dat' w lp ls 13 notitle, \ - 'pes_ooCISDT.dat' w lp ls 13 notitle, \ - 'pes_ooCIo1.dat' w lp ls 14 notitle, \ - 'pes_ooCIo1.5.dat' w lp ls 15 notitle, \ - 'pes_ooCIo2.dat' w lp ls 14 notitle, \ - 'pes_ooCIo2.5.dat' w lp ls 15 notitle, \ - 'pes_ooCIo3.dat' w lp ls 14 notitle, \ - 'pes_fci.dat' w lp ls 2 notitle, \ - [xmin:xmax] f0(x) w l ls 9 notitle, \ - [xmin:xmax] f1(x) w l ls 9 notitle, \ - [xmin:xmax] f2(x) w l ls 9 notitle, \ - [xmin:xmax] f3(x) w l ls 9 notitle, \ - [xmin:xmax] f4(x) w l ls 9 notitle, \ - [xmin:xmax] f5(x) w l ls 9 notitle, \ - [xmin:xmax] f6(x) w l ls 9 notitle, \ - [xmin:xmax] f7(x) w l ls 9 notitle, \ - [xmin:xmax] f8(x) w l ls 9 notitle, \ - [xmin:xmax] f9(x) w l ls 9 notitle, \ - [xmin:xmax] f10(x) w l ls 9 notitle, \ - [xmin:xmax] f11(x) w l ls 9 notitle, \ - [xmin:xmax] f12(x) w l ls 9 notitle, \ - [xmin:xmax] f13(x) w l ls 9 notitle, \ - [xmin:xmax] f14(x) w l ls 9 notitle, \ - [xmin:xmax] f15(x) w l ls 9 notitle, \ - [xmin:xmax] f16(x) w l ls 9 notitle, \ - [xmin:xmax] f17(x) w l ls 9 notitle, \ - [xmin:xmax] f18(x) w l ls 9 notitle +plot 'pes_rhf.dat' w lp ls 1 notitle, \ + 'pes_CISD.dat' w lp ls 3 notitle, \ + 'pes_CISDT.dat' w lp ls 3 notitle, \ + 'pes_CISDTQ.dat' w lp ls 3 notitle, \ + 'pes_s0.dat' w lp ls 8 notitle, \ + 'pes_s2.dat' w lp ls 8 notitle, \ + 'pes_s4.dat' w lp ls 8 notitle, \ + 'pes_CIo1.dat' w lp ls 4 notitle, \ + 'pes_CIo1.5.dat' w lp ls 5 notitle, \ + 'pes_CIo2.dat' w lp ls 4 notitle, \ + 'pes_CIo2.5.dat' w lp ls 5 notitle, \ + 'pes_CIo3.dat' w lp ls 4 notitle, \ + 'pes_CIo3.5.dat' w lp ls 5 notitle, \ + 'pes_CIo4.dat' w lp ls 4 notitle, \ + 'pes_ooCISD.dat' w lp ls 13 notitle, \ + 'pes_ooCISDT.dat' w lp ls 13 notitle, \ + 'pes_ooCIs0.dat' w lp ls 18 notitle, \ + 'pes_ooCIs2.dat' w lp ls 18 notitle, \ + 'pes_ooCIo1.dat' w lp ls 14 notitle, \ + 'pes_ooCIo1.5.dat' w lp ls 15 notitle, \ + 'pes_ooCIo2.dat' w lp ls 14 notitle, \ + 'pes_ooCIo2.5.dat' w lp ls 15 notitle, \ + 'pes_ooCIo3.dat' w lp ls 14 notitle, \ + 'pes_fci.dat' w lp ls 2 notitle, \ + [xmin:xmax] f0(x) w l ls 9 notitle, \ + [xmin:xmax] f1(x) w l ls 9 notitle, \ + [xmin:xmax] f2(x) w l ls 9 notitle, \ + [xmin:xmax] f3(x) w l ls 9 notitle, \ + [xmin:xmax] f4(x) w l ls 9 notitle, \ + [xmin:xmax] f5(x) w l ls 9 notitle, \ + [xmin:xmax] f6(x) w l ls 9 notitle, \ + [xmin:xmax] f7(x) w l ls 9 notitle, \ + [xmin:xmax] f8(x) w l ls 9 notitle, \ + [xmin:xmax] f9(x) w l ls 9 notitle, \ + [xmin:xmax] f10(x) w l ls 9 notitle, \ + [xmin:xmax] f11(x) w l ls 9 notitle, \ + [xmin:xmax] f12(x) w l ls 9 notitle, \ + [xmin:xmax] f13(x) w l ls 9 notitle, \ + [xmin:xmax] f14(x) w l ls 9 notitle, \ + [xmin:xmax] f15(x) w l ls 9 notitle, \ + [xmin:xmax] f16(x) w l ls 9 notitle, \ + [xmin:xmax] f17(x) w l ls 9 notitle, \ + [xmin:xmax] f18(x) w l ls 9 notitle, \ + [xmin:xmax] f19(x) w l ls 9 notitle, \ + [xmin:xmax] f20(x) w l ls 9 notitle, \ + [xmin:xmax] f21(x) w l ls 9 notitle, \ + [xmin:xmax] f22(x) w l ls 9 notitle, \ + [xmin:xmax] f23(x) w l ls 9 notitle ################################################################################### ################################################################################### diff --git a/N2_cc-pvdz/fit_eq.sh b/N2_cc-pvdz/fit_eq.sh index 5dad2b7..09f69af 100755 --- a/N2_cc-pvdz/fit_eq.sh +++ b/N2_cc-pvdz/fit_eq.sh @@ -1,5 +1,7 @@ #!/bin/bash +####################################################################### + if [ -f "fit.log" ]; then rm "fit.log" fi @@ -13,20 +15,25 @@ grep ^a fit.log | grep = | sed 's/=//g' | cut -c -30 | sed 's/a2 /hfCISD /g' | sed 's/a3 /hfCISDT /g' | sed 's/a4 /hfCISDTQ /g' | - sed 's/a5 /hfCIo1 /g' | - sed 's/a6 /hfCIo1.5 /g' | - sed 's/a7 /hfCIo2 /g' | - sed 's/a8 /hfCIo2.5 /g' | - sed 's/a9 /hfCIo3 /g' | - sed 's/a10/hfCIo3.5 /g' | - sed 's/a11/hfCIo4 /g' | - sed 's/a12/ooCISD /g' | - sed 's/a13/ooCISDT /g' | - sed 's/a14/ooCIo1 /g' | - sed 's/a15/ooCIo1.5 /g' | - sed 's/a16/ooCIo2 /g' | - sed 's/a17/ooCIo2.5 /g' | - sed 's/a18/ooCIo3 /g' > a.dat + sed 's/a5 /hfCIs0 /g' | + sed 's/a6 /hfCIs2 /g' | + sed 's/a7 /hfCIs4 /g' | + sed 's/a8 /hfCIo1 /g' | + sed 's/a9 /hfCIo1.5 /g' | + sed 's/a10/hfCIo2 /g' | + sed 's/a11/hfCIo2.5 /g' | + sed 's/a12/hfCIo3 /g' | + sed 's/a13/hfCIo3.5 /g' | + sed 's/a14/hfCIo4 /g' | + sed 's/a15/ooCISD /g' | + sed 's/a16/ooCISDT /g' | + sed 's/a17/ooCIs0 /g' | + sed 's/a18/ooCIs2 /g' | + sed 's/a19/ooCIo1 /g' | + sed 's/a20/ooCIo1.5 /g' | + sed 's/a21/ooCIo2 /g' | + sed 's/a22/ooCIo2.5 /g' | + sed 's/a23/ooCIo3 /g' > a.dat grep ^D fit.log | grep = | sed 's/=//g' | cut -c -30 | sed 's/D0 /FCI /g' | @@ -34,107 +41,216 @@ grep ^D fit.log | grep = | sed 's/=//g' | cut -c -30 | sed 's/D2 /hfCISD /g' | sed 's/D3 /hfCISDT /g' | sed 's/D4 /hfCISDTQ /g' | - sed 's/D5 /hfCIo1 /g' | - sed 's/D6 /hfCIo1.5 /g' | - sed 's/D7 /hfCIo2 /g' | - sed 's/D8 /hfCIo2.5 /g' | - sed 's/D9 /hfCIo3 /g' | - sed 's/D10/hfCIo3.5 /g' | - sed 's/D11/hfCIo4 /g' | - sed 's/D12/ooCISD /g' | - sed 's/D13/ooCISDT /g' | - sed 's/D14/ooCIo1 /g' | - sed 's/D15/ooCIo1.5 /g' | - sed 's/D16/ooCIo2 /g' | - sed 's/D17/ooCIo2.5 /g' | - sed 's/D18/ooCIo3 /g' > D.dat + sed 's/D5 /hfCIs0 /g' | + sed 's/D6 /hfCIs2 /g' | + sed 's/D7 /hfCIs4 /g' | + sed 's/D8 /hfCIo1 /g' | + sed 's/D9 /hfCIo1.5 /g' | + sed 's/D10/hfCIo2 /g' | + sed 's/D11/hfCIo2.5 /g' | + sed 's/D12/hfCIo3 /g' | + sed 's/D13/hfCIo3.5 /g' | + sed 's/D14/hfCIo4 /g' | + sed 's/D15/ooCISD /g' | + sed 's/D16/ooCISDT /g' | + sed 's/D17/ooCIs0 /g' | + sed 's/D18/ooCIs2 /g' | + sed 's/D19/ooCIo1 /g' | + sed 's/D20/ooCIo1.5 /g' | + sed 's/D21/ooCIo2 /g' | + sed 's/D22/ooCIo2.5 /g' | + sed 's/D23/ooCIo3 /g' > D.dat paste a.dat D.dat > aD.dat grep 'FCI' aD.dat | sed 's/FCI/-0.1 /g' > aD_FCI.dat grep 'FCI' aD.dat | sed 's/FCI/4.1 /g' >> aD_FCI.dat -grep 'RHF' aD.dat | sed 's/RHF/0 /g' > aD_CI.dat -grep 'RHF' aD.dat | sed 's/RHF/1 /g' >> aD_CI.dat -grep 'hfCISD ' aD.dat | sed 's/hfCISD/2 /g' >> aD_CI.dat -grep 'hfCISDT ' aD.dat | sed 's/hfCISDT/3 /g' >> aD_CI.dat -grep 'hfCISDTQ' aD.dat | sed 's/hfCISDTQ/4 /g' >> aD_CI.dat +grep ^a fit.log | grep = | sed 's/=//g' | cut -c -30 > a0.dat +grep 'a0 ' a0.dat | sed 's/a0 /FCI /g' > a.dat +grep 'a1 ' a0.dat | sed 's/a1 /RHF /g' >> a.dat +grep 'a2 ' a0.dat | sed 's/a2 /hfCISD /g' >> a.dat +grep 'a3 ' a0.dat | sed 's/a3 /hfCISDT /g' >> a.dat +grep 'a4 ' a0.dat | sed 's/a4 /hfCISDTQ /g' >> a.dat +grep 'a5 ' a0.dat | sed 's/a5 /hfCIs0 /g' >> a.dat +grep 'a6 ' a0.dat | sed 's/a6 /hfCIs2 /g' >> a.dat +grep 'a7 ' a0.dat | sed 's/a7 /hfCIs4 /g' >> a.dat +grep 'a8 ' a0.dat | sed 's/a8 /hfCIo1 /g' >> a.dat +grep 'a9 ' a0.dat | sed 's/a9 /hfCIo1.5 /g' >> a.dat +grep 'a10 ' a0.dat | sed 's/a10/hfCIo2 /g' >> a.dat +grep 'a11 ' a0.dat | sed 's/a11/hfCIo2.5 /g' >> a.dat +grep 'a12 ' a0.dat | sed 's/a12/hfCIo3 /g' >> a.dat +grep 'a13 ' a0.dat | sed 's/a13/hfCIo3.5 /g' >> a.dat +grep 'a14 ' a0.dat | sed 's/a14/hfCIo4 /g' >> a.dat +grep 'a15 ' a0.dat | sed 's/a15/ooCISD /g' >> a.dat +grep 'a16 ' a0.dat | sed 's/a16/ooCISDT /g' >> a.dat +grep 'a17 ' a0.dat | sed 's/a17/ooCIs0 /g' >> a.dat +grep 'a18 ' a0.dat | sed 's/a18/ooCIs2 /g' >> a.dat +grep 'a19 ' a0.dat | sed 's/a19/ooCIo1 /g' >> a.dat +grep 'a20 ' a0.dat | sed 's/a20/ooCIo1.5 /g' >> a.dat +grep 'a21 ' a0.dat | sed 's/a21/ooCIo2 /g' >> a.dat +grep 'a22 ' a0.dat | sed 's/a22/ooCIo2.5 /g' >> a.dat +grep 'a23 ' a0.dat | sed 's/a23/ooCIo3 /g' >> a.dat -grep 'RHF' aD.dat | sed 's/RHF/0 /g' > aD_ooCI.dat -grep 'RHF' aD.dat | sed 's/RHF/1 /g' >> aD_ooCI.dat -grep 'ooCISD ' aD.dat | sed 's/ooCISD/2 /g' >> aD_ooCI.dat -grep 'ooCISDT' aD.dat | sed 's/ooCISDT/3 /g' >> aD_ooCI.dat +grep ^D fit.log | grep = | sed 's/=//g' | cut -c -30 > D0.dat +grep 'D0 ' D0.dat | sed 's/D0 /FCI /g' > D.dat +grep 'D1 ' D0.dat | sed 's/D1 /RHF /g' >> D.dat +grep 'D2 ' D0.dat | sed 's/D2 /hfCISD /g' >> D.dat +grep 'D3 ' D0.dat | sed 's/D3 /hfCISDT /g' >> D.dat +grep 'D4 ' D0.dat | sed 's/D4 /hfCISDTQ /g' >> D.dat +grep 'D5 ' D0.dat | sed 's/D5 /hfCIs0 /g' >> D.dat +grep 'D6 ' D0.dat | sed 's/D6 /hfCIs2 /g' >> D.dat +grep 'D7 ' D0.dat | sed 's/D7 /hfCIs4 /g' >> D.dat +grep 'D8 ' D0.dat | sed 's/D8 /hfCIo1 /g' >> D.dat +grep 'D9 ' D0.dat | sed 's/D9 /hfCIo1.5 /g' >> D.dat +grep 'D10 ' D0.dat | sed 's/D10/hfCIo2 /g' >> D.dat +grep 'D11 ' D0.dat | sed 's/D11/hfCIo2.5 /g' >> D.dat +grep 'D12 ' D0.dat | sed 's/D12/hfCIo3 /g' >> D.dat +grep 'D13 ' D0.dat | sed 's/D13/hfCIo3.5 /g' >> D.dat +grep 'D14 ' D0.dat | sed 's/D14/hfCIo4 /g' >> D.dat +grep 'D15 ' D0.dat | sed 's/D15/ooCISD /g' >> D.dat +grep 'D16 ' D0.dat | sed 's/D16/ooCISDT /g' >> D.dat +grep 'D17 ' D0.dat | sed 's/D17/ooCIs0 /g' >> D.dat +grep 'D18 ' D0.dat | sed 's/D18/ooCIs2 /g' >> D.dat +grep 'D19 ' D0.dat | sed 's/D19/ooCIo1 /g' >> D.dat +grep 'D20 ' D0.dat | sed 's/D20/ooCIo1.5 /g' >> D.dat +grep 'D21 ' D0.dat | sed 's/D21/ooCIo2 /g' >> D.dat +grep 'D22 ' D0.dat | sed 's/D22/ooCIo2.5 /g' >> D.dat +grep 'D23 ' D0.dat | sed 's/D23/ooCIo3 /g' >> D.dat -grep 'RHF' aD.dat | sed 's/RHF/0 /g' > aD_CIo.dat -grep 'hfCIo1 ' aD.dat | sed 's/hfCIo1/1 /g' >> aD_CIo.dat -grep 'hfCIo1.5' aD.dat | sed 's/hfCIo1.5/1.5 /g' >> aD_CIo.dat -grep 'hfCIo2 ' aD.dat | sed 's/hfCIo2/2 /g' >> aD_CIo.dat -grep 'hfCIo2.5' aD.dat | sed 's/hfCIo2.5/2.5 /g' >> aD_CIo.dat -grep 'hfCIo3 ' aD.dat | sed 's/hfCIo3/3 /g' >> aD_CIo.dat -grep 'hfCIo3.5' aD.dat | sed 's/hfCIo3.5/3.5 /g' >> aD_CIo.dat -grep 'hfCIo4 ' aD.dat | sed 's/hfCIo4/4 /g' >> aD_CIo.dat +if [[ $(grep 'a0 ' a0.dat) ]]; then grep '0 ' det_FCI.dat | cut -c 4- > det.dat; fi +if [[ $(grep 'a1 ' a0.dat) ]]; then grep '0 ' det_CI.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a2 ' a0.dat) ]]; then grep '2 ' det_CI.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a3 ' a0.dat) ]]; then grep '3 ' det_CI.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a4 ' a0.dat) ]]; then grep '4 ' det_CI.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a5 ' a0.dat) ]]; then grep '0 ' det_CIs.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a6 ' a0.dat) ]]; then grep '2 ' det_CIs.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a7 ' a0.dat) ]]; then grep '4 ' det_CIs.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a8 ' a0.dat) ]]; then grep '1 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a9 ' a0.dat) ]]; then grep '1.5 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a10 ' a0.dat) ]]; then grep '2 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a11 ' a0.dat) ]]; then grep '2.5 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a12 ' a0.dat) ]]; then grep '3 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a13 ' a0.dat) ]]; then grep '3.5 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a14 ' a0.dat) ]]; then grep '4 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a15 ' a0.dat) ]]; then grep '2 ' det_CI.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a16 ' a0.dat) ]]; then grep '3 ' det_CI.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a17 ' a0.dat) ]]; then grep '0 ' det_CIs.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a18 ' a0.dat) ]]; then grep '2 ' det_CIs.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a19 ' a0.dat) ]]; then grep '1 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a20 ' a0.dat) ]]; then grep '1.5 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a21 ' a0.dat) ]]; then grep '2 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a22 ' a0.dat) ]]; then grep '2.5 ' det_CIo.dat | cut -c 4- >> det.dat; fi +if [[ $(grep 'a23 ' a0.dat) ]]; then grep '3 ' det_CIo.dat | cut -c 4- >> det.dat; fi -grep 'RHF' aD.dat | sed 's/RHF/0 /g' > aD_ooCIo.dat -grep 'ooCIo1 ' aD.dat | sed 's/ooCIo1/1 /g' >> aD_ooCIo.dat -grep 'ooCIo1.5' aD.dat | sed 's/ooCIo1.5/1.5 /g' >> aD_ooCIo.dat -grep 'ooCIo2 ' aD.dat | sed 's/ooCIo2/2 /g' >> aD_ooCIo.dat -grep 'ooCIo2.5' aD.dat | sed 's/ooCIo2.5/2.5 /g' >> aD_ooCIo.dat -grep 'ooCIo3 ' aD.dat | sed 's/ooCIo3/3 /g' >> aD_ooCIo.dat +paste det.dat a.dat D.dat > det_aD.dat + +grep 'FCI' det_aD.dat | sed 's/FCI/0 /g' > det_aD_FCI.dat +grep 'FCI' det_aD.dat | sed 's/FCI/1.0E9 /g' >> det_aD_FCI.dat + +grep 'RHF' det_aD.dat | sed 's/RHF/0 /g' > det_aD_CI.dat +grep 'RHF' det_aD.dat | sed 's/RHF/1 /g' >> det_aD_CI.dat +grep 'hfCISD ' det_aD.dat | sed 's/hfCISD/2 /g' >> det_aD_CI.dat +grep 'hfCISDT ' det_aD.dat | sed 's/hfCISDT/3 /g' >> det_aD_CI.dat +grep 'hfCISDTQ' det_aD.dat | sed 's/hfCISDTQ/4 /g' >> det_aD_CI.dat + +grep 'RHF' det_aD.dat | sed 's/RHF/0 /g' > det_aD_ooCI.dat +grep 'RHF' det_aD.dat | sed 's/RHF/1 /g' >> det_aD_ooCI.dat +grep 'ooCISD ' det_aD.dat | sed 's/ooCISD/2 /g' >> det_aD_ooCI.dat +grep 'ooCISDT' det_aD.dat | sed 's/ooCISDT/3 /g' >> det_aD_ooCI.dat + +grep 'hfCIs0 ' det_aD.dat | sed 's/hfCIs0/0 /g' > det_aD_CIs.dat +grep 'hfCIs2 ' det_aD.dat | sed 's/hfCIs2/2 /g' >> det_aD_CIs.dat +grep 'hfCIs4 ' det_aD.dat | sed 's/hfCIs4/4 /g' >> det_aD_CIs.dat + +grep 'ooCIs0 ' det_aD.dat | sed 's/ooCIs0/0 /g' > det_aD_ooCIs.dat +grep 'ooCIs2 ' det_aD.dat | sed 's/ooCIs2/2 /g' >> det_aD_ooCIs.dat + +grep 'RHF' det_aD.dat | sed 's/RHF/0 /g' > det_aD_CIo.dat +grep 'hfCIo1 ' det_aD.dat | sed 's/hfCIo1/1 /g' >> det_aD_CIo.dat +grep 'hfCIo1.5' det_aD.dat | sed 's/hfCIo1.5/1.5 /g' >> det_aD_CIo.dat +grep 'hfCIo2 ' det_aD.dat | sed 's/hfCIo2/2 /g' >> det_aD_CIo.dat +grep 'hfCIo2.5' det_aD.dat | sed 's/hfCIo2.5/2.5 /g' >> det_aD_CIo.dat +grep 'hfCIo3 ' det_aD.dat | sed 's/hfCIo3/3 /g' >> det_aD_CIo.dat +grep 'hfCIo3.5' det_aD.dat | sed 's/hfCIo3.5/3.5 /g' >> det_aD_CIo.dat +grep 'hfCIo4 ' det_aD.dat | sed 's/hfCIo4/4 /g' >> det_aD_CIo.dat + +grep 'RHF' det_aD.dat | sed 's/RHF/0 /g' > det_aD_ooCIo.dat +grep 'ooCIo1 ' det_aD.dat | sed 's/ooCIo1/1 /g' >> det_aD_ooCIo.dat +grep 'ooCIo1.5' det_aD.dat | sed 's/ooCIo1.5/1.5 /g' >> det_aD_ooCIo.dat +grep 'ooCIo2 ' det_aD.dat | sed 's/ooCIo2/2 /g' >> det_aD_ooCIo.dat +grep 'ooCIo2.5' det_aD.dat | sed 's/ooCIo2.5/2.5 /g' >> det_aD_ooCIo.dat +grep 'ooCIo3 ' det_aD.dat | sed 's/ooCIo3/3 /g' >> det_aD_ooCIo.dat ####################################################################### ####################################################################### +grep ^xe fit.log | grep = | sed 's/=//g' | cut -c -30 > xe0.dat + grep ^xe fit.log | grep = | sed 's/=//g' | cut -c -30 | sed 's/xe0 /FCI /g' | sed 's/xe1 /RHF /g' | sed 's/xe2 /hfCISD /g' | sed 's/xe3 /hfCISDT /g' | sed 's/xe4 /hfCISDTQ /g' | - sed 's/xe5 /hfCIo1 /g' | - sed 's/xe6 /hfCIo1.5 /g' | - sed 's/xe7 /hfCIo2 /g' | - sed 's/xe8 /hfCIo2.5 /g' | - sed 's/xe9 /hfCIo3 /g' | - sed 's/xe10/hfCIo3.5 /g' | - sed 's/xe11/hfCIo4 /g' | - sed 's/xe12/ooCISD /g' | - sed 's/xe13/ooCISDT /g' | - sed 's/xe14/ooCIo1 /g' | - sed 's/xe15/ooCIo1.5 /g' | - sed 's/xe16/ooCIo2 /g' | - sed 's/xe17/ooCIo2.5 /g' | - sed 's/xe18/ooCIo3 /g' > xe.dat + sed 's/xe5 /hfCIs0 /g' | + sed 's/xe6 /hfCIs2 /g' | + sed 's/xe7 /hfCIs4 /g' | + sed 's/xe8 /hfCIo1 /g' | + sed 's/xe9 /hfCIo1.5 /g' | + sed 's/xe10/hfCIo2 /g' | + sed 's/xe11/hfCIo2.5 /g' | + sed 's/xe12/hfCIo3 /g' | + sed 's/xe13/hfCIo3.5 /g' | + sed 's/xe14/hfCIo4 /g' | + sed 's/xe15/ooCISD /g' | + sed 's/xe16/ooCISDT /g' | + sed 's/xe17/ooCIs0 /g' | + sed 's/xe18/ooCIs2 /g' | + sed 's/xe19/ooCIo1 /g' | + sed 's/xe20/ooCIo1.5 /g' | + sed 's/xe21/ooCIo2 /g' | + sed 's/xe22/ooCIo2.5 /g' | + sed 's/xe23/ooCIo3 /g' > xe.dat +paste det.dat xe.dat D.dat > det_xe.dat -grep 'FCI' xe.dat | sed 's/FCI/-0.1 /g' > xe_FCI.dat -grep 'FCI' xe.dat | sed 's/FCI/4.1 /g' >> xe_FCI.dat +grep 'FCI' det_xe.dat | sed 's/FCI/0 /g' > det_xe_FCI.dat +grep 'FCI' det_xe.dat | sed 's/FCI/1E9 /g' >> det_xe_FCI.dat -grep 'RHF' xe.dat | sed 's/RHF/0 /g' > xe_CI.dat -grep 'RHF' xe.dat | sed 's/RHF/1 /g' >> xe_CI.dat -grep 'hfCISD ' xe.dat | sed 's/hfCISD/2 /g' >> xe_CI.dat -grep 'hfCISDT ' xe.dat | sed 's/hfCISDT/3 /g' >> xe_CI.dat -grep 'hfCISDTQ' xe.dat | sed 's/hfCISDTQ/4 /g' >> xe_CI.dat +grep 'RHF' det_xe.dat | sed 's/RHF/0 /g' > det_xe_CI.dat +grep 'RHF' det_xe.dat | sed 's/RHF/1 /g' >> det_xe_CI.dat +grep 'hfCISD ' det_xe.dat | sed 's/hfCISD/2 /g' >> det_xe_CI.dat +grep 'hfCISDT ' det_xe.dat | sed 's/hfCISDT/3 /g' >> det_xe_CI.dat +grep 'hfCISDTQ' det_xe.dat | sed 's/hfCISDTQ/4 /g' >> det_xe_CI.dat -grep 'RHF' xe.dat | sed 's/RHF/0 /g' > xe_ooCI.dat -grep 'RHF' xe.dat | sed 's/RHF/1 /g' >> xe_ooCI.dat -grep 'ooCISD ' xe.dat | sed 's/ooCISD/2 /g' >> xe_ooCI.dat -grep 'ooCISDT' xe.dat | sed 's/ooCISDT/3 /g' >> xe_ooCI.dat +grep 'RHF' det_xe.dat | sed 's/RHF/0 /g' > det_xe_ooCI.dat +grep 'RHF' det_xe.dat | sed 's/RHF/1 /g' >> det_xe_ooCI.dat +grep 'ooCISD ' det_xe.dat | sed 's/ooCISD/2 /g' >> det_xe_ooCI.dat +grep 'ooCISDT' det_xe.dat | sed 's/ooCISDT/3 /g' >> det_xe_ooCI.dat -grep 'RHF' xe.dat | sed 's/RHF/0 /g' > xe_CIo.dat -grep 'hfCIo1 ' xe.dat | sed 's/hfCIo1/1 /g' >> xe_CIo.dat -grep 'hfCIo1.5' xe.dat | sed 's/hfCIo1.5/1.5 /g' >> xe_CIo.dat -grep 'hfCIo2 ' xe.dat | sed 's/hfCIo2/2 /g' >> xe_CIo.dat -grep 'hfCIo2.5' xe.dat | sed 's/hfCIo2.5/2.5 /g' >> xe_CIo.dat -grep 'hfCIo3 ' xe.dat | sed 's/hfCIo3/3 /g' >> xe_CIo.dat -grep 'hfCIo3.5' xe.dat | sed 's/hfCIo3.5/3.5 /g' >> xe_CIo.dat -grep 'hfCIo4 ' xe.dat | sed 's/hfCIo4/4 /g' >> xe_CIo.dat +grep 'hfCIs0 ' det_xe.dat | sed 's/hfCIs0/0 /g' > det_xe_CIs.dat +grep 'hfCIs2 ' det_xe.dat | sed 's/hfCIs2/2 /g' >> det_xe_CIs.dat +grep 'hfCIs4 ' det_xe.dat | sed 's/hfCIs4/4 /g' >> det_xe_CIs.dat -grep 'RHF' xe.dat | sed 's/RHF/0 /g' > xe_ooCIo.dat -grep 'ooCIo1 ' xe.dat | sed 's/ooCIo1/1 /g' >> xe_ooCIo.dat -grep 'ooCIo1.5' xe.dat | sed 's/ooCIo1.5/1.5 /g' >> xe_ooCIo.dat -grep 'ooCIo2 ' xe.dat | sed 's/ooCIo2/2 /g' >> xe_ooCIo.dat -grep 'ooCIo2.5' xe.dat | sed 's/ooCIo2.5/2.5 /g' >> xe_ooCIo.dat -grep 'ooCIo3 ' xe.dat | sed 's/ooCIo3/3 /g' >> xe_ooCIo.dat +grep 'ooCIs0 ' det_xe.dat | sed 's/ooCIs0/0 /g' > det_xe_ooCIs.dat +grep 'ooCIs2 ' det_xe.dat | sed 's/ooCIs2/2 /g' >> det_xe_ooCIs.dat + +grep 'RHF' det_xe.dat | sed 's/RHF/0 /g' > det_xe_CIo.dat +grep 'hfCIo1 ' det_xe.dat | sed 's/hfCIo1/1 /g' >> det_xe_CIo.dat +grep 'hfCIo1.5' det_xe.dat | sed 's/hfCIo1.5/1.5 /g' >> det_xe_CIo.dat +grep 'hfCIo2 ' det_xe.dat | sed 's/hfCIo2/2 /g' >> det_xe_CIo.dat +grep 'hfCIo2.5' det_xe.dat | sed 's/hfCIo2.5/2.5 /g' >> det_xe_CIo.dat +grep 'hfCIo3 ' det_xe.dat | sed 's/hfCIo3/3 /g' >> det_xe_CIo.dat +grep 'hfCIo3.5' det_xe.dat | sed 's/hfCIo3.5/3.5 /g' >> det_xe_CIo.dat +grep 'hfCIo4 ' det_xe.dat | sed 's/hfCIo4/4 /g' >> det_xe_CIo.dat + +grep 'RHF' det_xe.dat | sed 's/RHF/0 /g' > det_xe_ooCIo.dat +grep 'ooCIo1 ' det_xe.dat | sed 's/ooCIo1/1 /g' >> det_xe_ooCIo.dat +grep 'ooCIo1.5' det_xe.dat | sed 's/ooCIo1.5/1.5 /g' >> det_xe_ooCIo.dat +grep 'ooCIo2 ' det_xe.dat | sed 's/ooCIo2/2 /g' >> det_xe_ooCIo.dat +grep 'ooCIo2.5' det_xe.dat | sed 's/ooCIo2.5/2.5 /g' >> det_xe_ooCIo.dat +grep 'ooCIo3 ' det_xe.dat | sed 's/ooCIo3/3 /g' >> det_xe_ooCIo.dat ####################################################################### diff --git a/N2_cc-pvdz/freq.gnu b/N2_cc-pvdz/freq.gnu index 2ad9a10..79bab1d 100644 --- a/N2_cc-pvdz/freq.gnu +++ b/N2_cc-pvdz/freq.gnu @@ -12,16 +12,21 @@ set encoding iso_8859_1 ################################################################################### ################################################################################### # SYSTEM DEPENDENT PART: -set xrange[-0.1:4.1] - +#set xrange[-0.1:4.1] +#set xtics 1 # VIEW 1: set yrange[2300:2800] set ytics 100 #set format y "%.2f" -################################################################################### -################################################################################### -set xtics 1 +set xrange[1:1e9] +set logscale x +set format x "10^{%T}" +set xtics 10**3 +set mxtics 1 + +################################################################################### +################################################################################### set grid xtics ytics mxtics mytics #lc rgb 'blue' lt 1, lc rgb 'red' lt 1 @@ -35,13 +40,15 @@ if (!exists("MP_yGAP")) MP_yGAP = 0.08 set multiplot layout 1,2 rowsfirst \ margins screen MP_LEFT, MP_RIGHT, MP_BOTTOM, MP_TOP spacing screen MP_xGAP, MP_yGAP -set style line 1 dt 1 lw 3 linecolor rgb "gray60" -set style line 2 dt 1 lw 3 linecolor rgb "black" +set style line 1 dt 1 lw 2 linecolor rgb "gray60" +set style line 2 dt 1 lw 2 linecolor rgb "black" -set style line 3 dt 1 lw 3 linecolor rgb "light-red" pt 13 ps 2 -set style line 4 dt 1 lw 3 linecolor rgb "sea-green" pt 13 ps 2 -set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 -set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 +set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 +set style line 8 dt 1 lw 2 linecolor rgb "medium-blue" pt 13 ps 2 +set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 +set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 18 dt 1 lw 2 linecolor rgb "medium-blue" pt 7 ps 2 set xlabel 'Computational scaling' set ylabel "Vibrational frequency (cm^{-1})" @@ -64,17 +71,19 @@ fac = sqrt(hartree/mu)/(2.0*pi*c) * 0.01 * 10**10 ################################################################################### # SYSTEM DEPENDENT PART: -plot 'aD_FCI.dat' u 1:(sqrt(2*$4)*$2*fac) w l ls 2 notitle, \ - 'aD_CI.dat' u 1:(sqrt(2*$4)*$2*fac) w lp ls 3 notitle, \ - 'aD_CIo.dat' u 1:(sqrt(2*$4)*$2*fac) w lp ls 4 notitle +plot 'det_aD_FCI.dat' u 2:(sqrt(2*$5)*$3*fac) w l ls 2 notitle, \ + 'det_aD_CI.dat' u 1:(sqrt(2*$5)*$3*fac) w lp ls 3 notitle, \ + 'det_aD_CIs.dat' u 1:(sqrt(2*$5)*$3*fac) w lp ls 8 notitle, \ + 'det_aD_CIo.dat' u 1:(sqrt(2*$5)*$3*fac) w lp ls 4 notitle unset ylabel unset label set format y "" -plot 'aD_FCI.dat' u 1:(sqrt(2*$4)*$2*fac) w l ls 2 notitle, \ - 'aD_ooCI.dat' u 1:(sqrt(2*$4)*$2*fac) w lp ls 13 notitle, \ - 'aD_ooCIo.dat' u 1:(sqrt(2*$4)*$2*fac) w lp ls 14 notitle +plot 'det_aD_FCI.dat' u 2:(sqrt(2*$5)*$3*fac) w l ls 2 notitle, \ + 'det_aD_ooCI.dat' u 1:(sqrt(2*$5)*$3*fac) w lp ls 13 notitle, \ + 'det_aD_ooCIs.dat' u 1:(sqrt(2*$5)*$3*fac) w lp ls 18 notitle, \ + 'det_aD_ooCIo.dat' u 1:(sqrt(2*$5)*$3*fac) w lp ls 14 notitle ################################################################################### ################################################################################### diff --git a/N2_cc-pvdz/pes_ooCIo2.dat b/N2_cc-pvdz/pes_ooCIo2.dat index 0164dd3..fbf3973 100644 --- a/N2_cc-pvdz/pes_ooCIo2.dat +++ b/N2_cc-pvdz/pes_ooCIo2.dat @@ -18,22 +18,22 @@ 1.9 -108.86886257 2.0 -108.84077599 2.1 -108.83459323 -2.2 -108.79128242 -2.3 -108.72246329 -2.4 -108.75577869 -2.5 -108.70168980 -2.6 -108.69457918 -2.7 -108.68882591 -2.8 -108.68432432 -2.9 -108.68060736 -3.0 -108.67758906 -3.1 -108.67511801 +2.2 -108.79134844 +2.3 -108.77217521 +2.4 -108.75588400 +2.5 -108.74188060 +2.6 -108.72458918 +2.7 -108.71923631 +2.8 -108.71012874 +2.9 -108.70097423 +3.0 -108.69402485 +3.1 -108.68911921 3.2 -108.67308683 3.3 -108.67141560 -3.4 -108.67001229 -3.5 -108.66885662 -3.6 -108.66789065 +3.4 -108.67002245 +3.5 -108.66886371 +3.6 -108.66789843 3.7 -108.66708106 -3.8 -108.66640007 +3.8 -108.66640313 3.9 -108.66582706 4.0 -108.66535194 diff --git a/N2_cc-pvdz/pes_ooCIo2_2.dat b/N2_cc-pvdz/pes_ooCIo2_2.dat new file mode 100644 index 0000000..0164dd3 --- /dev/null +++ b/N2_cc-pvdz/pes_ooCIo2_2.dat @@ -0,0 +1,39 @@ +0.7 -107.83482773 +0.75 -108.31005446 +0.8 -108.64681095 +0.85 -108.88141034 +0.9 -109.04051443 +0.95 -109.14388877 +1.0 -109.20631036 +1.05 -109.23895880 +1.1 -109.25000278 +1.15 -109.24579210 +1.2 -109.23099766 +1.3 -109.18267401 +1.4 -109.12332649 +1.5 -109.05982689 +1.6 -109.00578012 +1.7 -108.95470159 +1.8 -108.91017348 +1.9 -108.86886257 +2.0 -108.84077599 +2.1 -108.83459323 +2.2 -108.79128242 +2.3 -108.72246329 +2.4 -108.75577869 +2.5 -108.70168980 +2.6 -108.69457918 +2.7 -108.68882591 +2.8 -108.68432432 +2.9 -108.68060736 +3.0 -108.67758906 +3.1 -108.67511801 +3.2 -108.67308683 +3.3 -108.67141560 +3.4 -108.67001229 +3.5 -108.66885662 +3.6 -108.66789065 +3.7 -108.66708106 +3.8 -108.66640007 +3.9 -108.66582706 +4.0 -108.66535194 diff --git a/N2_cc-pvdz/pes_ooCIo2_3.dat b/N2_cc-pvdz/pes_ooCIo2_3.dat new file mode 100644 index 0000000..26ba25e --- /dev/null +++ b/N2_cc-pvdz/pes_ooCIo2_3.dat @@ -0,0 +1,39 @@ +0.7 -107.83482773 +0.75 -108.31005446 +0.8 -108.64681095 +0.85 -108.88141034 +0.9 -109.04051443 +0.95 -109.14388877 +1.0 -109.20631036 +1.05 -109.23895880 +1.1 -109.25000278 +1.15 -109.24579210 +1.2 -109.23099766 +1.3 -109.18267401 +1.4 -109.12332649 +1.5 -109.05982689 +1.6 -109.00578012 +1.7 -108.95470159 +1.8 -108.91017348 +1.9 -108.86886257 +2.0 -108.84077599 +2.1 -108.83459323 +2.2 -108.79134844 +2.3 -108.77217521 +2.4 -108.75588400 +2.5 -108.74188060 +2.6 -108.72458918 +2.7 -108.71923631 +2.8 -108.71012874 +2.9 -108.68060736 +3.0 -108.67758906 +3.1 -108.67511801 +3.2 -108.67308683 +3.3 -108.67141560 +3.4 -108.67001229 +3.5 -108.66885662 +3.6 -108.66789065 +3.7 -108.66708106 +3.8 -108.66640007 +3.9 -108.66582706 +4.0 -108.66535194 diff --git a/N2_cc-pvdz/pes_ooCIs2.dat b/N2_cc-pvdz/pes_ooCIs2.dat index 9e8b558..d6c188e 100644 --- a/N2_cc-pvdz/pes_ooCIs2.dat +++ b/N2_cc-pvdz/pes_ooCIs2.dat @@ -3,3 +3,13 @@ 0.8 -108.56215206 0.85 -108.74598631 0.9 -108.95404331 +0.95 -109.05561068 +1.0 -109.11689475 +1.05 -109.14908622 +1.1 -109.15934090 +1.15 -109.15302204 +1.2 -109.14008454 +1.3 -109.02341803 +1.4 -108.96792865 +1.5 -108.91488200 +1.6 -108.87965670 diff --git a/N2_cc-pvdz/pes_s4.dat b/N2_cc-pvdz/pes_s4.dat index baf6fc7..e30cbf3 100644 --- a/N2_cc-pvdz/pes_s4.dat +++ b/N2_cc-pvdz/pes_s4.dat @@ -25,4 +25,15 @@ 2.6 -108.90196959 2.7 -108.90001756 2.8 -108.89856314 -2.9 -108.89747847 +2.9 -108.89747831 +3.0 -108.89666596 +3.1 -108.89606747 +3.2 -108.89558868 +3.3 -108.89522880 +3.4 -108.89494643 +3.5 -108.89471782 +3.6 -108.89452638 +3.7 -108.89435836 +3.8 -108.89420319 +3.9 -108.89405680 +4.0 -108.89392591 diff --git a/N2_cc-pvdz/plot_stat.gnu b/N2_cc-pvdz/plot_stat.gnu index bad0d95..90d323c 100644 --- a/N2_cc-pvdz/plot_stat.gnu +++ b/N2_cc-pvdz/plot_stat.gnu @@ -6,23 +6,26 @@ set terminal postscript eps size 5.3,5.3 enhanced color \ font 'Helvetica,24' linewidth 2 set output 'plot_stat.eps' -set format y "10^{%T}" ################################################################################### ################################################################################### # SYSTEM DEPENDENT PART: -set xrange[-0.1:4.1] +#set xrange[-0.1:4.1] set yrange[1e-2:1] +#set yrange[1e-2:2] +#set yrange[1e-1:1] +set logscale y +#set format y "10^{%T}" set xrange[1:1e9] set logscale x set format x "10^{%T}" + ################################################################################### ################################################################################### -#set xtics 1 +set xtics 10**3 set mxtics 1 -set logscale y set grid xtics ytics mxtics mytics #lc rgb 'blue' lt 1, lc rgb 'red' lt 1 @@ -36,19 +39,30 @@ if (!exists("MP_yGAP")) MP_yGAP = 0.08 set multiplot layout 1,2 rowsfirst \ margins screen MP_LEFT, MP_RIGHT, MP_BOTTOM, MP_TOP spacing screen MP_xGAP, MP_yGAP -set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 -set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 -set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 -set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 +set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 +set style line 8 dt 1 lw 2 linecolor rgb "medium-blue" pt 13 ps 2 +set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 +set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 18 dt 1 lw 2 linecolor rgb "medium-blue" pt 7 ps 2 -set xlabel 'Computational scaling' + +#set xlabel 'Computational scaling' +set xlabel 'Number of determinants' set ylabel 'Nonparallelity error (Hartree)' -plot 'stat_CI.dat' u 1:($2) w lp ls 3 notitle, \ - 'stat_CIo.dat' u 1:($2) w lp ls 4 notitle +plot 'stat_CI.dat' u ($3):($4) w lp ls 3 notitle, \ + 'stat_CIs.dat' u ($3):($4) w lp ls 8 notitle, \ + 'stat_CIo.dat' u ($3):($4) w lp ls 4 notitle +#plot 'stat_CI.dat' u 1:($2) w lp ls 3 notitle, \ +# 'stat_CIo.dat' u 1:($2) w lp ls 4 notitle unset ylabel unset label +set format y "" -plot 'stat_ooCI.dat' u 1:($2) w lp ls 13 notitle, \ - 'stat_ooCIo.dat' u 1:($2) w lp ls 14 notitle +plot 'stat_ooCI.dat' u ($3):($4) w lp ls 13 notitle, \ + 'stat_ooCIo.dat' u ($3):($4) w lp ls 14 notitle +# 'stat_ooCIs.dat' u ($3):($4) w lp ls 18 notitle, \ +#plot 'stat_ooCI.dat' u 1:($2) w lp ls 13 notitle, \ +# 'stat_ooCIo.dat' u 1:($2) w lp ls 14 notitle diff --git a/N2_cc-pvdz/plot_stat.sh b/N2_cc-pvdz/plot_stat.sh index c6d49b4..d7fdd33 100755 --- a/N2_cc-pvdz/plot_stat.sh +++ b/N2_cc-pvdz/plot_stat.sh @@ -1,9 +1,20 @@ #!/bin/bash -./compute_NPE.pl 1 4.0 -./compute_NPE.pl 2 4.0 -./compute_NPE.pl 3 4.0 -./compute_NPE.pl 4 4.0 +norbitals=26 +nelectrons=10 +xcut=4.0 + +if [ -f "input" ]; then + rm "input" +fi +echo "$nelectrons $norbitals" > input +../determinants/determinants.x < input +rm "input" + +for i in {1..6} +do +./compute_NPE.pl $i $xcut +done gnuplot plot_stat.gnu epspdf plot_stat.eps diff --git a/N2_cc-pvdz/xe.gnu b/N2_cc-pvdz/xe.gnu index 90c837c..882fbf4 100644 --- a/N2_cc-pvdz/xe.gnu +++ b/N2_cc-pvdz/xe.gnu @@ -13,6 +13,13 @@ set encoding iso_8859_1 ################################################################################### # SYSTEM DEPENDENT PART: set xrange[-0.1:4.1] +set xtics 1 + +set xrange[1:1e9] +set logscale x +set format x "10^{%T}" +set xtics 10**3 +set mxtics 1 # VIEW 1: set yrange[1.07:1.13] @@ -20,7 +27,6 @@ set format y "%.2f" ################################################################################### ################################################################################### -set xtics 1 set ytics 0.01 set grid xtics ytics mxtics mytics #lc rgb 'blue' lt 1, lc rgb 'red' lt 1 @@ -35,13 +41,15 @@ if (!exists("MP_yGAP")) MP_yGAP = 0.08 set multiplot layout 1,2 rowsfirst \ margins screen MP_LEFT, MP_RIGHT, MP_BOTTOM, MP_TOP spacing screen MP_xGAP, MP_yGAP -set style line 1 dt 1 lw 3 linecolor rgb "gray60" -set style line 2 dt 1 lw 3 linecolor rgb "black" +set style line 1 dt 1 lw 2 linecolor rgb "gray60" +set style line 2 dt 1 lw 2 linecolor rgb "black" -set style line 3 dt 1 lw 3 linecolor rgb "light-red" pt 13 ps 2 -set style line 4 dt 1 lw 3 linecolor rgb "sea-green" pt 13 ps 2 -set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 -set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 3 dt 1 lw 2 linecolor rgb "light-red" pt 13 ps 2 +set style line 4 dt 1 lw 2 linecolor rgb "sea-green" pt 13 ps 2 +set style line 8 dt 1 lw 2 linecolor rgb "medium-blue" pt 13 ps 2 +set style line 13 dt 1 lw 2 linecolor rgb "light-red" pt 7 ps 2 +set style line 14 dt 1 lw 2 linecolor rgb "sea-green" pt 7 ps 2 +set style line 18 dt 1 lw 2 linecolor rgb "medium-blue" pt 7 ps 2 set xlabel 'Computational scaling' set ylabel "Equilibrium distance ({\305})" @@ -50,9 +58,10 @@ set ylabel "Equilibrium distance ({\305})" ################################################################################### # SYSTEM DEPENDENT PART: -plot 'xe_FCI.dat' w l ls 2 notitle, \ - 'xe_CI.dat' w lp ls 3 notitle, \ - 'xe_CIo.dat' w lp ls 4 notitle#, \ +plot 'det_xe_FCI.dat' u 2:3 w l ls 2 notitle, \ + 'det_xe_CI.dat' u 1:3 w lp ls 3 notitle, \ + 'det_xe_CIs.dat' u 1:3 w lp ls 8 notitle, \ + 'det_xe_CIo.dat' u 1:3 w lp ls 4 notitle#, \ # 'xe_ooCI.dat' w lp ls 13 notitle, \ # 'xe_ooCIo.dat' w lp ls 14 notitle @@ -60,9 +69,10 @@ unset ylabel unset label set format y "" -plot 'xe_FCI.dat' w l ls 2 notitle, \ - 'xe_ooCI.dat' w lp ls 13 notitle, \ - 'xe_ooCIo.dat' w lp ls 14 notitle +plot 'det_xe_FCI.dat' u 2:3 w l ls 2 notitle, \ + 'det_xe_ooCI.dat' u 1:3 w lp ls 13 notitle, \ + 'det_xe_ooCIs.dat' u 1:3 w lp ls 18 notitle, \ + 'det_xe_ooCIo.dat' u 1:3 w lp ls 14 notitle ################################################################################### ################################################################################### diff --git a/determinants/determinants.f90 b/determinants/determinants.f90 index 001c122..e0fa312 100644 --- a/determinants/determinants.f90 +++ b/determinants/determinants.f90 @@ -1,64 +1,244 @@ program determinants - implicit none +implicit none - integer*16 :: o, v - integer*16 :: e, k - integer*16 :: n +integer*16 :: o, v +integer*16 :: e, k +integer*16 :: n, m -! read(*,*) o, v - read(*,*) e, k - o = e/2 - v = k - o +integer*16 :: s0d0 +integer*16 :: s2d1 +integer*16 :: s0d2, s2d2, s4d2 +integer*16 :: s2d3, s4d3, s6d3 +integer*16 :: s0d4, s2d4, s4d4, s6d4, s8d4 +integer*16 :: s2d5, s4d5, s6d5 +integer*16 :: s0d6, s2d6, s4d6 +integer*16 :: s2d7 +integer*16 :: s0d8 - !!!!!!!!!!!!!!!!!!!!!!! - ! HF - n = 1 - write(*,*) '0 ', n +integer*16 :: rhf, fci +integer*16 :: cis0, cis2, cis4, cis6 +integer*16 :: cis, cisd, cisdt, cisdtq +integer*16 :: cio1, cio1p5, cio2, cio2p5, cio3, cio3p5, cio4 - ! CIo1 - n = n + 2*o*v + o*v - write(*,*) '1 ', n +integer :: nunit +character(len=8), parameter :: fmt1 = "(*(i16))" +character(len=8), parameter :: fmt2 = "(a,i16)" - ! CIo1.5 - n = n + o*v*(o+v-2) - write(*,*) '1.5 ', n +character(len=32) :: filename - ! CIo2 - n = n + o*(o-1)*v*(v-1)*15/4 - write(*,*) '2 ', n +!!!!!!!!!!!!!!!!!!!!!!! +read(*,*) e, k +!!!!!!!!!!!!!!!!!!!!!!! - ! CIo2.5 - n = n + o*(o-1)*v*(v-1)*(o+v-4)*3/2 - write(*,*) '2.5 ', n +o = e/2 +v = k - o - ! CIo3 - n = n + o*(o-1)*(o-2)*v*(v-1)*(v-2)*13/12 + o*(o-1)*v*(v-1)*((v-2)*(v-3)+(o-2)*(o-3)+3*(o-2)*(v-2))/2 - !n = n + o*(o-1)*v*(v-1) * ( (o-2)*(v-2)*31/6 + (v-2)*(v-3) + (o-2)*(o-3) ) / 2 - write(*,*) '3 ', n - !!!!!!!!!!!!!!!!!!!!!!! +!!!!!!!!!!!!!!!!!!!!!!! +call binomial_coefficient(k,o,m) +! CIs0 +cis0 = m +! CIs2 +cis2 = cis0 + m*o*v +! CIs4 +cis4 = cis2 + m*o*(o-1)*v*(v-1)/4 +! CIs6 +cis6 = cis4 + m*o*(o-1)*(o-2)*v*(v-1)*(v-2)/36 +!!!!!!!!!!!!!!!!!!!!!!! - write(*,*) +filename = 'det_CIs.dat' +open(newunit=nunit,file=filename,status='unknown') + write(nunit,fmt2) '0 ', cis0 + write(nunit,fmt2) '2 ', cis2 + write(nunit,fmt2) '4 ', cis4 + write(nunit,fmt2) '6 ', cis6 +close(nunit) - !!!!!!!!!!!!!!!!!!!!!!! - ! HF - n = 1 - write(*,*) '0 ', n +!!!!!!!!!!!!!!!!!!!!!!! - ! CIS - n = n + 2*o*v - write(*,*) '1 ', n +s0d0 = 1 - ! CISD - !n = o*v + o*v*(o+v-2) + o*(o-1)*v*(v-1)*3/2 - n = n + o*v * ( 3*o*v -(o+v) + 1 ) / 2 - write(*,*) '2 ', n +s0d2 = o*v - ! CISDT - !n = 2*o*(o-1)*v*(v-1) + o*(o-1)*v*(v-1)*(o+v-4) + o*(o-1)*(o-2)*v*(v-1)*(v-2)*5/9 - !n = o*(o-1)*v*(v-1) * ( 2 + (o+v-4) + (o-2)*(v-2)*5/9 ) - n = n + o*(o-1)*v*(v-1) * ( 5*o*v -(o+v) + 2 ) / 9 - write(*,*) '3 ', n - !!!!!!!!!!!!!!!!!!!!!!! +s0d4 = o*(o-1)*v*(v-1)/4 + +s0d6 = o*(o-1)*(o-2)*v*(v-1)*(v-2)/36 + +s0d8 = o*(o-1)*(o-2)*(o-3)*v*(v-1)*(v-2)*(v-3)/400 + +!!!!!!!!!!!!!!!!!!!!!!! + +s2d1 = 2*o*v + +!s2d2 = o *v*(v-1) + & +! o*(o-1)*v +s2d2 = o*v*(o+v-2) + +s2d3 = 2*o*(o-1)*v*(v-1) + +!s2d4 = o*(o-1) *v*(v-1)*(v-2)/2 + & +! o*(o-1)*(o-2)*v*(v-1) /2 +s2d4 = o*(o-1)*v*(v-1)*(o+v-4)/2 + +s2d5 = o*(o-1)*(o-2)*v*(v-1)*(v-2)/2 + +!s2d6 = o*(o-1)*(o-2) *v*(v-1)*(v-2)*(v-3)/12 + & +! o*(o-1)*(o-2)*(o-3)*v*(v-1)*(v-2) /12 +s2d6 = o*(o-1)*(o-2)*v*(v-1)*(v-2)*(o+v-6)/12 + +s2d7 = o*(o-1)*(o-2)*(o-3)*v*(v-1)*(v-2)*(v-3)/18 + +!!!!!!!!!!!!!!!!!!!!!!! + +s4d2 = o*(o-1)*v*(v-1)*3/2 + +!s4d3 = o*(o-1) *v*(v-1)*(v-2) + & +! o*(o-1)*(o-2)*v*(v-1) +s4d3 = o*(o-1)*v*(v-1)*(o+v-4) + +!s4d4 = o*(o-1) *v*(v-1)*(v-2)*(v-3)/8 + & +! o*(o-1)*(o-2) *v*(v-1)*(v-2) *3/2 + & +! o*(o-1)*(o-2)*(o-3)*v*(v-1) /8 +s4d4 = o*(o-1)*v*(v-1) * ( (v-2)*(v-3) + (o-2)*(o-3) + 12*(o-2)*(v-2) )/8 + +!s4d5 = o*(o-1)*(o-2) *v*(v-1)*(v-2)*(v-3)/2 + & +! o*(o-1)*(o-2)*(o-3)*v*(v-1)*(v-2) /2 +s4d5 = o*(o-1)*(o-2)*v*(v-1)*(v-2)*(o+v-6)/2 + +!s4d6 = o*(o-1)*(o-2) *v*(v-1)*(v-2)*(v-3)*(v-4)/24 + & +! o*(o-1)*(o-2)*(o-3) *v*(v-1)*(v-2)*(v-3) *3/8 + & +! o*(o-1)*(o-2)*(o-3)*(o-4)*v*(v-1)*(v-2) /24 +s4d6 = o*(o-1)*(o-2)*v*(v-1)*(v-2) * ( (o-3)*(o-4) + (v-3)*(v-4) + 3*(o-3)*(v-3) )/24 + +!!!!!!!!!!!!!!!!!!!!!!! + +s6d3 = o*(o-1)*(o-2)*v*(v-1)*(v-2)*5/9 + +!s6d4 = o*(o-1)*(o-2) *v*(v-1)*(v-2)*(v-3)*5/12 + & +! o*(o-1)*(o-2)*(o-3)*v*(v-1)*(v-2) *5/12 +s6d4 = o*(o-1)*(o-2)*v*(v-1)*(v-2)*(o+v-6)*5/12 + +s6d5 = o*(o-1)*(o-2) *v*(v-1)*(v-2)*(v-3)*(v-4)/12 + & + o*(o-1)*(o-2)*(o-3) *v*(v-1)*(v-2)*(v-3) *5/9 + & + o*(o-1)*(o-2)*(o-3)*(o-4)*v*(v-1)*(v-2) /12 +!s6d5 = o*(o-1)*(o-2)*v*(v-1)*(v-2) * ( 3*(o-3)*(o-4) + 3*(v-3)*(v-4) + 20*(o-3)*(v-3) )/36 + +!!!!!!!!!!!!!!!!!!!!!!! + +s8d4 = o*(o-1)*(o-2)*(o-3)*v*(v-1)*(v-2)*(v-3)*35/288 + +!!!!!!!!!!!!!!!!!!!!!!! + +!!!!!!!!!!!!!!!!!!!!!!! +! HF +rhf = s0d0 +! CIo1 +cio1 = rhf + s0d2 + s2d1 +! CIo1.5 +cio1p5 = cio1 + s2d2 +! CIo2 +cio2 = cio1p5 + s0d4 + s2d3 + s4d2 +! CIo2.5 +cio2p5 = cio2 + s2d4 + s4d3 +! CIo3 +cio3 = cio2p5 + s0d6 + s2d5 + s4d4 + s6d3 +! CIo3.5 +cio3p5 = cio3 + s2d6 + s4d5 + s6d4 +! CIo4 +cio4 = cio3p5 + s0d8 + s2d7 + s4d6 + s6d5 + s8d4 + +filename = 'det_CIo.dat' +open(newunit=nunit,file=filename,status='unknown') + write(nunit,fmt2) '0 ', rhf + write(nunit,fmt2) '1 ', cio1 + write(nunit,fmt2) '1.5 ', cio1p5 + write(nunit,fmt2) '2 ', cio2 + write(nunit,fmt2) '2.5 ', cio2p5 + write(nunit,fmt2) '3 ', cio3 + write(nunit,fmt2) '3.5 ', cio3p5 + write(nunit,fmt2) '4 ', cio4 +close(nunit) + +!!!!!!!!!!!!!!!!!!!!!!! +! HF +rhf = s0d0 +! CIS +cis = rhf + s2d1 +! CISD +cisd = cis + s0d2 + s2d2 + s4d2 +! CISDT +cisdt = cisd + s2d3 + s4d3 + s6d3 +! CISDTQ +cisdtq = cisdt + s0d4 + s2d4 + s4d4 + s8d4 + +filename = 'det_CI.dat' +open(newunit=nunit,file=filename,status='unknown') + write(nunit,fmt2) '0 ', rhf + write(nunit,fmt2) '1 ', cis + write(nunit,fmt2) '2 ', cisd + write(nunit,fmt2) '3 ', cisdt + write(nunit,fmt2) '4 ', cisdtq +close(nunit) + +!!!!!!!!!!!!!!!!!!!!!!! + +call binomial_coefficient(k,o,m) + +fci = m*m + +filename = 'det_FCI.dat' +open(newunit=nunit,file=filename,status='unknown') + write(nunit,fmt2) '0 ', fci +close(nunit) + +!!!!!!!!!!!!!!!!!!!!!!! + +filename = 'det.dat' +open(newunit=nunit,file=filename,status='unknown') + write(nunit,fmt2) 'FCI ', fci + write(nunit,fmt2) 'RHF ', rhf + write(nunit,fmt2) 'CIS ', cis + write(nunit,fmt2) 'CISD ', cisd + write(nunit,fmt2) 'CISDT ', cisdt + write(nunit,fmt2) 'CISDTQ ', cisdtq + write(nunit,fmt2) 'CIs0 ', cis0 + write(nunit,fmt2) 'CIs2 ', cis2 + write(nunit,fmt2) 'CIs4 ', cis4 + write(nunit,fmt2) 'CIo1 ', cio1 + write(nunit,fmt2) 'CIo1.5 ', cio1p5 + write(nunit,fmt2) 'CIo2 ', cio2 + write(nunit,fmt2) 'CIo2.5 ', cio2p5 + write(nunit,fmt2) 'CIo3 ', cio3 + write(nunit,fmt2) 'CIo3.5 ', cio3p5 + write(nunit,fmt2) 'CIo4 ', cio4 +close(nunit) + +!!!!!!!!!!!!!!!!!!!!!!! + +filename = 'table.dat' +open(newunit=nunit,file=filename,status='unknown') + write(nunit,fmt1) s0d0 + write(nunit,fmt1) 0, s2d1 + write(nunit,fmt1) s0d2, s2d2, s4d2 + write(nunit,fmt1) 0, s2d3, s4d3, s6d3 + write(nunit,fmt1) s0d4, s2d4, s4d4, s6d4, s8d4 + write(nunit,fmt1) 0, s2d5, s4d5, s6d5 + write(nunit,fmt1) s0d6, s2d6, s4d6 + write(nunit,fmt1) 0, s2d7 + write(nunit,fmt1) s0d8 +close(nunit) end program determinants +subroutine binomial_coefficient(n,k,c) + implicit none + ! (n k) = n!/((n-k)!k!) + integer*16, intent(in) :: n, k + integer*16, intent(out) :: c + integer :: i + real*8 :: cr + cr = 1.0d0 + do i=1,k + cr = cr * real( n+1-i) / real( i ) + end do + c = int( cr ) +end subroutine binomial_coefficient diff --git a/ethylene_cc-pvdz/pes_s2.dat b/ethylene_cc-pvdz/pes_s2.dat index bd8f33c..11c5350 100644 --- a/ethylene_cc-pvdz/pes_s2.dat +++ b/ethylene_cc-pvdz/pes_s2.dat @@ -32,4 +32,24 @@ 5.0 -77.85589649 5.2 -77.84735682 5.4 -77.84051191 -5.6 -77.83508041 +5.6 -77.83508038 +5.8 -77.83086618 +6.0 -77.82770134 +6.2 -77.82529353 +6.4 -77.82344962 +6.6 -77.82204421 +6.8 -77.82097839 +7.0 -77.82017532 +7.2 -77.81957475 +7.4 -77.81912895 +7.6 -77.81879522 +7.8 -77.81854523 +8.0 -77.81835447 +9.0 -77.81787391 +10.0 -77.81771509 +11.0 -77.81763359 +12.0 -77.81756333 +13.0 -77.81749758 +14.0 -77.81743822 +15.0 -77.81738541 +16.0 -77.81733851 diff --git a/ethylene_cc-pvdz/pes_s4.dat b/ethylene_cc-pvdz/pes_s4.dat new file mode 100644 index 0000000..d433b6f --- /dev/null +++ b/ethylene_cc-pvdz/pes_s4.dat @@ -0,0 +1,9 @@ +1.5 -77.19804066 +1.6 -77.51998753 +1.7 -77.76134874 +1.8 -77.94087858 +1.9 -78.07291572 +2.0 -78.16842060 +2.1 -78.23583346 +2.2 -78.28167322 +2.3 -78.31098264 diff --git a/ethylene_cc-pvdz/plot_error.gnu b/ethylene_cc-pvdz/plot_error.gnu index bfc1f99..667c964 100644 --- a/ethylene_cc-pvdz/plot_error.gnu +++ b/ethylene_cc-pvdz/plot_error.gnu @@ -59,6 +59,7 @@ plot '< paste pes_fci.dat pes_rhf.dat' using 1:($4-$2) w l ls 1 notitle, \ '< paste pes_fci.dat pes_CISDTQ.dat' using 1:($4-$2) w l ls 3 notitle, \ '< paste pes_fci.dat pes_s0.dat' using 1:($4-$2) w l ls 8 notitle, \ '< paste pes_fci.dat pes_s2.dat' using 1:($4-$2) w l ls 8 notitle, \ + '< paste pes_fci.dat pes_s4.dat' using 1:($4-$2) w l ls 8 notitle, \ '< paste pes_fci.dat pes_CIo1.dat' using 1:($4-$2) w l ls 4 notitle, \ '< paste pes_fci.dat pes_CIo1.5.dat' using 1:($4-$2) w l ls 5 notitle, \ '< paste pes_fci.dat pes_CIo2.dat' using 1:($4-$2) w l ls 4 notitle, \ diff --git a/ethylene_cc-pvdz/plot_pes.gnu b/ethylene_cc-pvdz/plot_pes.gnu index 424cdd0..ac1ca15 100644 --- a/ethylene_cc-pvdz/plot_pes.gnu +++ b/ethylene_cc-pvdz/plot_pes.gnu @@ -90,6 +90,7 @@ plot 'pes_rhf.dat' w l ls 1 notitle, \ 'pes_CISDTQ.dat' w l ls 3 notitle, \ 'pes_s0.dat' w l ls 8 notitle, \ 'pes_s2.dat' w l ls 8 notitle, \ + 'pes_s4.dat' w l ls 8 notitle, \ 'pes_CIo1.dat' w l ls 4 notitle, \ 'pes_CIo1.5.dat' w l ls 5 notitle, \ 'pes_CIo2.dat' w l ls 4 notitle, \