fpout.print freebytes
# Copy the input file
- scrprefix = scrdir + sep + inpbody
+ scrprefix = scrdir + sep + inpbody
+ if $platform == "win"
+ scrbody = inpbody
+ else
+ scrbody = scrprefix
+ end
filecopy(inpname, scrprefix + ".F05")
# Prepare environmental variables
ENV["BASPATH"] = "#{auxdir}#{sep}BASES"
ENV["QUANPOL"] = "#{auxdir}#{sep}QUANPOL"
ENV["EXTBAS"] = "/dev/null"
- ENV["IRCDATA"] = "#{scrprefix}.irc"
- ENV["PUNCH"] = "#{scrprefix}.dat"
- ENV["INPUT"] = "#{scrprefix}.F05"
- ENV["AOINTS"] = "#{scrprefix}.F08"
- ENV["MOINTS"] = "#{scrprefix}.F09"
- ENV["DICTNRY"] = "#{scrprefix}.F10"
- ENV["DRTFILE"] = "#{scrprefix}.F11"
- ENV["CIVECTR"] = "#{scrprefix}.F12"
- ENV["CASINTS"] = "#{scrprefix}.F13"
- ENV["CIINTS"] = "#{scrprefix}.F14"
- ENV["WORK15"] = "#{scrprefix}.F15"
- ENV["WORK16"] = "#{scrprefix}.F16"
- ENV["CSFSAVE"] = "#{scrprefix}.F17"
- ENV["FOCKDER"] = "#{scrprefix}.F18"
- ENV["WORK19"] = "#{scrprefix}.F19"
- ENV["DASORT"] = "#{scrprefix}.F20"
- ENV["DFTINTS"] = "#{scrprefix}.F21"
- ENV["DFTGRID"] = "#{scrprefix}.F22"
- ENV["JKFILE"] = "#{scrprefix}.F23"
- ENV["ORDINT"] = "#{scrprefix}.F24"
- ENV["EFPIND"] = "#{scrprefix}.F25"
- ENV["PCMDATA"] = "#{scrprefix}.F26"
- ENV["PCMINTS"] = "#{scrprefix}.F27"
- ENV["MLTPL"] = "#{scrprefix}.F28"
- ENV["MLTPLT"] = "#{scrprefix}.F29"
- ENV["DAFL30"] = "#{scrprefix}.F30"
- ENV["SOINTX"] = "#{scrprefix}.F31"
- ENV["SOINTY"] = "#{scrprefix}.F32"
- ENV["SOINTZ"] = "#{scrprefix}.F33"
- ENV["SORESC"] = "#{scrprefix}.F34"
- ENV["SIMEN"] = "#{scrprefix}.simen"
- ENV["SIMCOR"] = "#{scrprefix}.simcor"
- ENV["GCILIST"] = "#{scrprefix}.F37"
- ENV["HESSIAN"] = "#{scrprefix}.F38"
- ENV["SOCCDAT"] = "#{scrprefix}.F40"
- ENV["AABB41"] = "#{scrprefix}.F41"
- ENV["BBAA42"] = "#{scrprefix}.F42"
- ENV["BBBB43"] = "#{scrprefix}.F43"
- ENV["MCQD50"] = "#{scrprefix}.F50"
- ENV["MCQD51"] = "#{scrprefix}.F51"
- ENV["MCQD52"] = "#{scrprefix}.F52"
- ENV["MCQD53"] = "#{scrprefix}.F53"
- ENV["MCQD54"] = "#{scrprefix}.F54"
- ENV["MCQD55"] = "#{scrprefix}.F55"
- ENV["MCQD56"] = "#{scrprefix}.F56"
- ENV["MCQD57"] = "#{scrprefix}.F57"
- ENV["MCQD58"] = "#{scrprefix}.F58"
- ENV["MCQD59"] = "#{scrprefix}.F59"
- ENV["MCQD60"] = "#{scrprefix}.F60"
- ENV["MCQD61"] = "#{scrprefix}.F61"
- ENV["MCQD62"] = "#{scrprefix}.F62"
- ENV["MCQD63"] = "#{scrprefix}.F63"
- ENV["MCQD64"] = "#{scrprefix}.F64"
- ENV["NMRINT1"] = "#{scrprefix}.F61"
- ENV["NMRINT2"] = "#{scrprefix}.F62"
- ENV["NMRINT3"] = "#{scrprefix}.F63"
- ENV["NMRINT4"] = "#{scrprefix}.F64"
- ENV["NMRINT5"] = "#{scrprefix}.F65"
- ENV["NMRINT6"] = "#{scrprefix}.F66"
- ENV["DCPHFH2"] = "#{scrprefix}.F67"
- ENV["DCPHF21"] = "#{scrprefix}.F68"
- ENV["GVVPT"] = "#{scrprefix}.F69"
+ ENV["IRCDATA"] = "#{scrbody}.irc"
+ ENV["PUNCH"] = "#{scrbody}.dat"
+ ENV["INPUT"] = "#{scrbody}.F05"
+ ENV["AOINTS"] = "#{scrbody}.F08"
+ ENV["MOINTS"] = "#{scrbody}.F09"
+ ENV["DICTNRY"] = "#{scrbody}.F10"
+ ENV["DRTFILE"] = "#{scrbody}.F11"
+ ENV["CIVECTR"] = "#{scrbody}.F12"
+ ENV["CASINTS"] = "#{scrbody}.F13"
+ ENV["CIINTS"] = "#{scrbody}.F14"
+ ENV["WORK15"] = "#{scrbody}.F15"
+ ENV["WORK16"] = "#{scrbody}.F16"
+ ENV["CSFSAVE"] = "#{scrbody}.F17"
+ ENV["FOCKDER"] = "#{scrbody}.F18"
+ ENV["WORK19"] = "#{scrbody}.F19"
+ ENV["DASORT"] = "#{scrbody}.F20"
+ ENV["DFTINTS"] = "#{scrbody}.F21"
+ ENV["DFTGRID"] = "#{scrbody}.F22"
+ ENV["JKFILE"] = "#{scrbody}.F23"
+ ENV["ORDINT"] = "#{scrbody}.F24"
+ ENV["EFPIND"] = "#{scrbody}.F25"
+ ENV["PCMDATA"] = "#{scrbody}.F26"
+ ENV["PCMINTS"] = "#{scrbody}.F27"
+ ENV["MLTPL"] = "#{scrbody}.F28"
+ ENV["MLTPLT"] = "#{scrbody}.F29"
+ ENV["DAFL30"] = "#{scrbody}.F30"
+ ENV["SOINTX"] = "#{scrbody}.F31"
+ ENV["SOINTY"] = "#{scrbody}.F32"
+ ENV["SOINTZ"] = "#{scrbody}.F33"
+ ENV["SORESC"] = "#{scrbody}.F34"
+ ENV["SIMEN"] = "#{scrbody}.simen"
+ ENV["SIMCOR"] = "#{scrbody}.simcor"
+ ENV["GCILIST"] = "#{scrbody}.F37"
+ ENV["HESSIAN"] = "#{scrbody}.F38"
+ ENV["SOCCDAT"] = "#{scrbody}.F40"
+ ENV["AABB41"] = "#{scrbody}.F41"
+ ENV["BBAA42"] = "#{scrbody}.F42"
+ ENV["BBBB43"] = "#{scrbody}.F43"
+ ENV["MCQD50"] = "#{scrbody}.F50"
+ ENV["MCQD51"] = "#{scrbody}.F51"
+ ENV["MCQD52"] = "#{scrbody}.F52"
+ ENV["MCQD53"] = "#{scrbody}.F53"
+ ENV["MCQD54"] = "#{scrbody}.F54"
+ ENV["MCQD55"] = "#{scrbody}.F55"
+ ENV["MCQD56"] = "#{scrbody}.F56"
+ ENV["MCQD57"] = "#{scrbody}.F57"
+ ENV["MCQD58"] = "#{scrbody}.F58"
+ ENV["MCQD59"] = "#{scrbody}.F59"
+ ENV["MCQD60"] = "#{scrbody}.F60"
+ ENV["MCQD61"] = "#{scrbody}.F61"
+ ENV["MCQD62"] = "#{scrbody}.F62"
+ ENV["MCQD63"] = "#{scrbody}.F63"
+ ENV["MCQD64"] = "#{scrbody}.F64"
+ ENV["NMRINT1"] = "#{scrbody}.F61"
+ ENV["NMRINT2"] = "#{scrbody}.F62"
+ ENV["NMRINT3"] = "#{scrbody}.F63"
+ ENV["NMRINT4"] = "#{scrbody}.F64"
+ ENV["NMRINT5"] = "#{scrbody}.F65"
+ ENV["NMRINT6"] = "#{scrbody}.F66"
+ ENV["DCPHFH2"] = "#{scrbody}.F67"
+ ENV["DCPHF21"] = "#{scrbody}.F68"
+ ENV["GVVPT"] = "#{scrbody}.F69"
# next files are used only during coupled cluster runs, so let's
# display the numerous definitions only if they are to be used.
- ENV["CCREST"] = "#{scrprefix}.F70"
- ENV["CCDIIS"] = "#{scrprefix}.F71"
- ENV["CCINTS"] = "#{scrprefix}.F72"
- ENV["CCT1AMP"] = "#{scrprefix}.F73"
- ENV["CCT2AMP"] = "#{scrprefix}.F74"
- ENV["CCT3AMP"] = "#{scrprefix}.F75"
- ENV["CCVM"] = "#{scrprefix}.F76"
- ENV["CCVE"] = "#{scrprefix}.F77"
- ENV["EOMSTAR"] = "#{scrprefix}.F80"
- ENV["EOMVEC1"] = "#{scrprefix}.F81"
- ENV["EOMVEC2"] = "#{scrprefix}.F82"
- ENV["EOMHC1"] = "#{scrprefix}.F83"
- ENV["EOMHC2"] = "#{scrprefix}.F84"
- ENV["EOMHHHH"] = "#{scrprefix}.F85"
- ENV["EOMPPPP"] = "#{scrprefix}.F86"
- ENV["EOMRAMP"] = "#{scrprefix}.F87"
- ENV["EOMRTMP"] = "#{scrprefix}.F88"
- ENV["EOMDG12"] = "#{scrprefix}.F89"
- ENV["MMPP"] = "#{scrprefix}.F90"
- ENV["MMHPP"] = "#{scrprefix}.F91"
- ENV["MMCIVEC"] = "#{scrprefix}.F92"
- ENV["MMCIVC1"] = "#{scrprefix}.F93"
- ENV["MMCIITR"] = "#{scrprefix}.F94"
- ENV["MMNEXM"] = "#{scrprefix}.F95"
- ENV["MMNEXE"] = "#{scrprefix}.F96"
- ENV["MMNREXM"] = "#{scrprefix}.F97"
- ENV["MMNREXE"] = "#{scrprefix}.F98 "
+ ENV["CCREST"] = "#{scrbody}.F70"
+ ENV["CCDIIS"] = "#{scrbody}.F71"
+ ENV["CCINTS"] = "#{scrbody}.F72"
+ ENV["CCT1AMP"] = "#{scrbody}.F73"
+ ENV["CCT2AMP"] = "#{scrbody}.F74"
+ ENV["CCT3AMP"] = "#{scrbody}.F75"
+ ENV["CCVM"] = "#{scrbody}.F76"
+ ENV["CCVE"] = "#{scrbody}.F77"
+ ENV["EOMSTAR"] = "#{scrbody}.F80"
+ ENV["EOMVEC1"] = "#{scrbody}.F81"
+ ENV["EOMVEC2"] = "#{scrbody}.F82"
+ ENV["EOMHC1"] = "#{scrbody}.F83"
+ ENV["EOMHC2"] = "#{scrbody}.F84"
+ ENV["EOMHHHH"] = "#{scrbody}.F85"
+ ENV["EOMPPPP"] = "#{scrbody}.F86"
+ ENV["EOMRAMP"] = "#{scrbody}.F87"
+ ENV["EOMRTMP"] = "#{scrbody}.F88"
+ ENV["EOMDG12"] = "#{scrbody}.F89"
+ ENV["MMPP"] = "#{scrbody}.F90"
+ ENV["MMHPP"] = "#{scrbody}.F91"
+ ENV["MMCIVEC"] = "#{scrbody}.F92"
+ ENV["MMCIVC1"] = "#{scrbody}.F93"
+ ENV["MMCIITR"] = "#{scrbody}.F94"
+ ENV["MMNEXM"] = "#{scrbody}.F95"
+ ENV["MMNEXE"] = "#{scrbody}.F96"
+ ENV["MMNREXM"] = "#{scrbody}.F97"
+ ENV["MMNREXE"] = "#{scrbody}.F98 "
#
# next are for TDHFX code, not used by current GAMESS
#
- ENV["OLI201"] = "#{scrprefix}.F201"
- ENV["OLI202"] = "#{scrprefix}.F202"
- ENV["OLI203"] = "#{scrprefix}.F203"
- ENV["OLI204"] = "#{scrprefix}.F204"
- ENV["OLI205"] = "#{scrprefix}.F205"
- ENV["OLI206"] = "#{scrprefix}.F206"
- ENV["OLI207"] = "#{scrprefix}.F207"
- ENV["OLI208"] = "#{scrprefix}.F208"
- ENV["OLI209"] = "#{scrprefix}.F209"
- ENV["OLI210"] = "#{scrprefix}.F210"
- ENV["OLI211"] = "#{scrprefix}.F211"
- ENV["OLI212"] = "#{scrprefix}.F212"
- ENV["OLI213"] = "#{scrprefix}.F213"
- ENV["OLI214"] = "#{scrprefix}.F214"
- ENV["OLI215"] = "#{scrprefix}.F215"
- ENV["OLI216"] = "#{scrprefix}.F216"
- ENV["OLI217"] = "#{scrprefix}.F217"
- ENV["OLI218"] = "#{scrprefix}.F218"
- ENV["OLI219"] = "#{scrprefix}.F219"
- ENV["OLI220"] = "#{scrprefix}.F220"
- ENV["OLI221"] = "#{scrprefix}.F221"
- ENV["OLI222"] = "#{scrprefix}.F222"
- ENV["OLI223"] = "#{scrprefix}.F223"
- ENV["OLI224"] = "#{scrprefix}.F224"
- ENV["OLI225"] = "#{scrprefix}.F225"
- ENV["OLI226"] = "#{scrprefix}.F226"
- ENV["OLI227"] = "#{scrprefix}.F227"
- ENV["OLI228"] = "#{scrprefix}.F228"
- ENV["OLI229"] = "#{scrprefix}.F229"
- ENV["OLI230"] = "#{scrprefix}.F230"
- ENV["OLI231"] = "#{scrprefix}.F231"
- ENV["OLI232"] = "#{scrprefix}.F232"
- ENV["OLI233"] = "#{scrprefix}.F233"
- ENV["OLI234"] = "#{scrprefix}.F234"
- ENV["OLI235"] = "#{scrprefix}.F235"
- ENV["OLI236"] = "#{scrprefix}.F236"
- ENV["OLI237"] = "#{scrprefix}.F237"
- ENV["OLI238"] = "#{scrprefix}.F238"
- ENV["OLI239"] = "#{scrprefix}.F239"
+ ENV["OLI201"] = "#{scrbody}.F201"
+ ENV["OLI202"] = "#{scrbody}.F202"
+ ENV["OLI203"] = "#{scrbody}.F203"
+ ENV["OLI204"] = "#{scrbody}.F204"
+ ENV["OLI205"] = "#{scrbody}.F205"
+ ENV["OLI206"] = "#{scrbody}.F206"
+ ENV["OLI207"] = "#{scrbody}.F207"
+ ENV["OLI208"] = "#{scrbody}.F208"
+ ENV["OLI209"] = "#{scrbody}.F209"
+ ENV["OLI210"] = "#{scrbody}.F210"
+ ENV["OLI211"] = "#{scrbody}.F211"
+ ENV["OLI212"] = "#{scrbody}.F212"
+ ENV["OLI213"] = "#{scrbody}.F213"
+ ENV["OLI214"] = "#{scrbody}.F214"
+ ENV["OLI215"] = "#{scrbody}.F215"
+ ENV["OLI216"] = "#{scrbody}.F216"
+ ENV["OLI217"] = "#{scrbody}.F217"
+ ENV["OLI218"] = "#{scrbody}.F218"
+ ENV["OLI219"] = "#{scrbody}.F219"
+ ENV["OLI220"] = "#{scrbody}.F220"
+ ENV["OLI221"] = "#{scrbody}.F221"
+ ENV["OLI222"] = "#{scrbody}.F222"
+ ENV["OLI223"] = "#{scrbody}.F223"
+ ENV["OLI224"] = "#{scrbody}.F224"
+ ENV["OLI225"] = "#{scrbody}.F225"
+ ENV["OLI226"] = "#{scrbody}.F226"
+ ENV["OLI227"] = "#{scrbody}.F227"
+ ENV["OLI228"] = "#{scrbody}.F228"
+ ENV["OLI229"] = "#{scrbody}.F229"
+ ENV["OLI230"] = "#{scrbody}.F230"
+ ENV["OLI231"] = "#{scrbody}.F231"
+ ENV["OLI232"] = "#{scrbody}.F232"
+ ENV["OLI233"] = "#{scrbody}.F233"
+ ENV["OLI234"] = "#{scrbody}.F234"
+ ENV["OLI235"] = "#{scrbody}.F235"
+ ENV["OLI236"] = "#{scrbody}.F236"
+ ENV["OLI237"] = "#{scrbody}.F237"
+ ENV["OLI238"] = "#{scrbody}.F238"
+ ENV["OLI239"] = "#{scrbody}.F239"
if $platform == "win"
if ncpus < 2
# File containing arguments to mpiexec
procfil = "#{scrprefix}.processes.mpd"
fp = File.open(procfil, "w")
- fp.print "-env ENVFIL #{envfil} -n #{ncpus} #{gmsdir}#{sep}gamess.#{gmsvers}.exe\n"
+ fp.print "-env ENVFIL #{envfil} -wdir #{scrdir} -n #{ncpus} #{gmsdir}#{sep}gamess.#{gmsvers}.exe\n"
fp.close
end
register_menu("View\t-", nil)
register_menu("View\t^Show Unit Cell", :cmd_show_unit_cell,
- lambda { |m| [m != nil, m.show_unitcell] } )
+ lambda { |m| [m != nil, m && m.show_unitcell] } )
register_menu("View\t^Show Hydrogen Atoms", :cmd_show_hydrogens,
- lambda { |m| [m != nil, m.show_hydrogens] } )
+ lambda { |m| [m != nil, m && m.show_hydrogens] } )
register_menu("View\t^Show Dummy Atoms", :cmd_show_dummy_atoms,
- lambda { |m| [m != nil, m.show_dummy_atoms] } )
+ lambda { |m| [m != nil, m && m.show_dummy_atoms] } )
register_menu("View\t^Show Expanded Atoms", :cmd_show_expanded,
- lambda { |m| [m != nil, m.show_expanded] } )
+ lambda { |m| [m != nil, m && m.show_expanded] } )
register_menu("View\t^Show Ellipsoids", :cmd_show_ellipsoids,
- lambda { |m| [m != nil, m.show_ellipsoids] } )
+ lambda { |m| [m != nil, m && m.show_ellipsoids] } )
register_menu("View\t^Show Rotation Center", :cmd_show_rotation_center,
- lambda { |m| [m != nil, m.show_rotation_center] } )
+ lambda { |m| [m != nil, m && m.show_rotation_center] } )
register_menu("View\t-", nil)
register_menu("View\t^Show Graphite...", :cmd_show_graphite,
- lambda { |m| [m != nil, m.show_graphite?] } )
+ lambda { |m| [m != nil, m && m.show_graphite?] } )
register_menu("View\t-", nil)
register_menu("View\tAppearance\t^Line", :cmd_line_mode,
- lambda { |m| [m != nil, m.line_mode] } )
+ lambda { |m| [m != nil, m && m.line_mode] } )
register_menu("View\tAppearance\t^Ball and Stick", :cmd_ball_and_stick_mode,
- lambda { |m| [m != nil, !m.line_mode && m.atom_radius < 0.5] } )
+ lambda { |m| [m != nil, m && !m.line_mode && m.atom_radius < 0.5] } )
register_menu("View\tAppearance\t^Space Filling", :cmd_space_filling_mode,
- lambda { |m| [m != nil, !m.line_mode && m.atom_radius >= 0.5] } )
+ lambda { |m| [m != nil, m && !m.line_mode && m.atom_radius >= 0.5] } )