Quantum Chemistry Package: Help Database
Copyright (c) RDMCHEM 2018,2023,2024,2025
makehelp
Create Database
Add to Database (package)
Add to Database (updates)
Add to Database (curricula)
Add to Database (lessons)
Add to Database (lessons/art)
Add to Database (QuantumComputing subpackage)
unprotect(makehelp);
makehelp := proc(nm::{name,string},\ file::{name,string},\ lib::{name,string},\ {aliases::(list({name,string})) := [],\ browser::(list({name,string})) := NULL,\ product::string := "Quantum Chemistry",\ showhelp::truefalse := true},` $`) option `Copyright (c) 1995 by Waterloo Maple Inc. All rights reserved.`; local textobject,line,nmnm; global libname; textobject := NULL; line := readline(file); while line<>0 do if length(line)<=10 then line := `` || line || ` `; end if; textobject := textobject,line; line := readline(file) end do; textobject := TEXT(textobject); if type(nm,'indexed') then nmnm := sprintf(`%A,%A`,op(0,nm),op(nm)) else nmnm := nm end if; if not FileTools:-Exists(lib) then HelpTools:-Database:-Create(lib) end if; HelpTools:-HelpCallUI('insert', 'topic'=nmnm, 'library'=lib, 'text'=textobject, ':-aliases'=map(convert,aliases,'string'), ':-product'=product); if browser<>NULL then HelpTools:-HelpCallUI('insert', 'topic'=nmnm, 'library'=lib, ':-browser'=map(convert,browser,'string'), ':-product'=product) end if; if not LibraryTools:-IsActiveLibrary(lib) then libname := libname,lib end if; if showhelp then help(nmnm) else return NULL end if end proc:
dir0 := "C:/Users/david/Documents/My Maple/Maple 21/QCT2025/HelpPages";
dir0≔C:/Users/david/Documents/My Maple/Maple 21/QCT2025/HelpPages
dir := cat(dir0,"/makehelp");
dir≔C:/Users/david/Documents/My Maple/Maple 21/QCT2025/HelpPages/makehelp
helpfile := cat(dir,"/QuantumChemistry.help");
helpfile≔C:/Users/david/Documents/My Maple/Maple 21/QCT2025/HelpPages/makehelp/QuantumChemistry.help
if FileTools:-Exists(helpfile) then FileTools:-Remove(helpfile) fi;
HelpTools:-Database:-Create(helpfile);
C:/Users/david/Documents/My Maple/Maple 21/QCT2025/HelpPages/makehelp/QuantumChemistry.help
HelpTools:-Database:-Add(helpfile);
C:\Program Files\Maple 2025\lib\maple.help,C:\Program Files\Maple 2025\lib\maple_ja.help,C:\Users\david\maple\toolbox\2025\QuantumChemistry\lib\QuantumChemistry.help
libname := dir,libname;
libname≔C:/Users/david/Documents/My Maple/Maple 21/QCT2025/HelpPages/makehelp,C:\Program Files\Maple 2025\lib,C:\Users\david\maple\toolbox\2025\QuantumChemistry\lib
dir2 := cat(dir0,"/package");
dir2≔C:/Users/david/Documents/My Maple/Maple 21/QCT2025/HelpPages/package
pkg := "QuantumChemistry/";
pkg≔QuantumChemistry/
topic := "Toolboxes","Quantum Chemistry";
topic≔Toolboxes,Quantum Chemistry
wrks := remove(has,FileTools:-ListDirectory(dir2),"PDF");
wrks≔ActiveSpaceCI.mw,ActiveSpaceSCF.mw,AOIntegrals.mw,AOLabels.mw,AtomicData.mw,Basis.mw,BondAngles.mw,BondDistances.mw,Charges.mw,ChargesPlot.mw,Chat.mw,ContractedSchrodinger.mw,Copyright.mw,CorrelationEnergy.mw,CoupledCluster.mw,DensityFunctional.mw,DensityPlot3D.mw,Dipole.mw,DipolePlot.mw,Energy.mw,ExcitationEnergies.mw,ExcitationSpectra.mw,ExcitationSpectraPlot.mw,ExcitedStateEnergies.mw,ExcitedStateSpins.mw,ExcitonDensityPlot.mw,ExcitonPopulations.mw,ExcitonPopulationsPlot.mw,FullCI.mw,Functionals.mw,GeometryOptimization.mw,GhostAtoms.mw,HartreeFock.mw,Interactive.mw,Isotopes.mw,LiteratureSearch.mw,LocalOrbitals.mw,MOCoefficients.mw,MODiagram.mw,MOEnergies.mw,MOIntegrals.mw,MolecularData.mw,MolecularDictionary.mw,MolecularGeometry.mw,MOOccupations.mw,MOOccupationsPlot.mw,MOSymmetries.mw,MP2.mw,NuclearEnergy.mw,NuclearGradient.mw,OscillatorStrengths.mw,Overview.mw,Parametric2RDM.mw,PlotMolecule.mw,Populations.mw,Purify2RDM.mw,RDM1.mw,RDM2.mw,RDMFunctional.mw,ReadXYZ.mw,Restore.mw,RTM1.mw,Save.mw,SaveXYZ.mw,SearchBasisSets.mw,SearchFunctionals.mw,SkeletalStructure.mw,Solvent.mw,SolventDatabase.mw,Thermodynamics.mw,TransitionDipolePlot.mw,TransitionDipoles.mw,TransitionOrbitalPlot.mw,TransitionOrbitals.mw,Tutorial.mw,Variational2RDM.mw,VibrationalModeAnimation.mw,VibrationalModes.mw,Video.mw
topics := map2(StringTools:-Subs,".mw"="",wrks);
topics≔ActiveSpaceCI,ActiveSpaceSCF,AOIntegrals,AOLabels,AtomicData,Basis,BondAngles,BondDistances,Charges,ChargesPlot,Chat,ContractedSchrodinger,Copyright,CorrelationEnergy,CoupledCluster,DensityFunctional,DensityPlot3D,Dipole,DipolePlot,Energy,ExcitationEnergies,ExcitationSpectra,ExcitationSpectraPlot,ExcitedStateEnergies,ExcitedStateSpins,ExcitonDensityPlot,ExcitonPopulations,ExcitonPopulationsPlot,FullCI,Functionals,GeometryOptimization,GhostAtoms,HartreeFock,Interactive,Isotopes,LiteratureSearch,LocalOrbitals,MOCoefficients,MODiagram,MOEnergies,MOIntegrals,MolecularData,MolecularDictionary,MolecularGeometry,MOOccupations,MOOccupationsPlot,MOSymmetries,MP2,NuclearEnergy,NuclearGradient,OscillatorStrengths,Overview,Parametric2RDM,PlotMolecule,Populations,Purify2RDM,RDM1,RDM2,RDMFunctional,ReadXYZ,Restore,RTM1,Save,SaveXYZ,SearchBasisSets,SearchFunctionals,SkeletalStructure,Solvent,SolventDatabase,Thermodynamics,TransitionDipolePlot,TransitionDipoles,TransitionOrbitalPlot,TransitionOrbitals,Tutorial,Variational2RDM,VibrationalModeAnimation,VibrationalModes,Video
for k to nops(wrks) do if topics[k]="Overview" then makehelp(cat(pkg,topics[k]), cat(dir2,"/",wrks[k]), helpfile, browser=[topic,topics[k]], showhelp=false, aliases=["Quantum Chemistry", "QuantumChemistry", "quantum chemistry", "quantumchemistry"]); else makehelp(cat(pkg,topics[k]), cat(dir2,"/",wrks[k]), helpfile, browser=[topic,topics[k]], showhelp=false); fi; od;
#help(pkg);
dir2 := cat(dir0,"/updates");
dir2≔C:/Users/david/Documents/My Maple/Maple 21/QCT2025/HelpPages/updates
topic2 := topic,"Updates";
topic2≔Toolboxes,Quantum Chemistry,Updates
wrks≔WhatsNew2020.mw,WhatsNew2021.mw,WhatsNew2022.mw,WhatsNew2023.mw,WhatsNew2024.mw,WhatsNew2025.mw
topics≔WhatsNew2020,WhatsNew2021,WhatsNew2022,WhatsNew2023,WhatsNew2024,WhatsNew2025
for k to nops(wrks) do makehelp(cat(pkg,topics[k]), cat(dir2,"/",wrks[k]), helpfile, browser=[topic2,topics[k]], showhelp=false); od;
dir2 := cat(dir0,"/courses/curricula");
dir2≔C:/Users/david/Documents/My Maple/Maple 21/QCT2025/HelpPages/courses/curricula
topic2 := topic,"Courses","Curricula";
topic2≔Toolboxes,Quantum Chemistry,Courses,Curricula
wrks≔APChemistry.mw,ChemistryOfArt.mw,ComputationalChemistry.mw,GeneralChemistry.mw,PhysicalChemistry-Quantum.mw,PhysicalChemistry-StatisticalThermodynamics.mw,Physics-Quantum.mw,Physics-StatisticalThermodynamics.mw,QuantumChemistry.mw
topics≔APChemistry,ChemistryOfArt,ComputationalChemistry,GeneralChemistry,PhysicalChemistry-Quantum,PhysicalChemistry-StatisticalThermodynamics,Physics-Quantum,Physics-StatisticalThermodynamics,QuantumChemistry
dir2 := cat(dir0,"/courses/lessons");
dir2≔C:/Users/david/Documents/My Maple/Maple 21/QCT2025/HelpPages/courses/lessons
topic2 := topic,"Courses","Lessons";
topic2≔Toolboxes,Quantum Chemistry,Courses,Lessons
wrks := remove(has,remove(has,FileTools:-ListDirectory(dir2),"PDF"),"art");
wrks≔AtomicStructure.mw,BlackbodyRadiation.mw,Boltzmann.mw,ChemicalBonding.mw,CorrelationEnergies.mw,DFT.mw,Enthalpy.mw,Entropy&FreeEnergy.mw,FermiGoldenRule.mw,GeometryOptimizations.mw,HarmonicOscillator.mw,HartreeFockMethod.mw,HeatCapacity.mw,HuckelTheory.mw,KoopmansTheorem.mw,MaxwellBoltzmann.mw,MBPT2.mw,MolecularIEs.mw,MolecularOrbitals.mw,ParticleInBox-Dyes.mw,ParticleInBox.mw,PeriodicTrends-IEs.mw,PhotoelectricEffect.mw,QuantumComputingIntro.mw,StatisticalThermodynamics.mw,ThermodynamicsOfCombustion.mw,TransitionsInButadiene.mw,Variational2RDMTheory.mw,VariationalTheorem.mw,VibrationalSpectroscopy-PES.mw,VibrationalSpectroscopy.mw,VSEPR.mw
topics≔AtomicStructure,BlackbodyRadiation,Boltzmann,ChemicalBonding,CorrelationEnergies,DFT,Enthalpy,Entropy&FreeEnergy,FermiGoldenRule,GeometryOptimizations,HarmonicOscillator,HartreeFockMethod,HeatCapacity,HuckelTheory,KoopmansTheorem,MaxwellBoltzmann,MBPT2,MolecularIEs,MolecularOrbitals,ParticleInBox-Dyes,ParticleInBox,PeriodicTrends-IEs,PhotoelectricEffect,QuantumComputingIntro,StatisticalThermodynamics,ThermodynamicsOfCombustion,TransitionsInButadiene,Variational2RDMTheory,VariationalTheorem,VibrationalSpectroscopy-PES,VibrationalSpectroscopy,VSEPR
dir2 := cat(dir0,"/courses/lessons/art");
dir2≔C:/Users/david/Documents/My Maple/Maple 21/QCT2025/HelpPages/courses/lessons/art
topic2 := topic,"Courses","Lessons","Art";
topic2≔Toolboxes,Quantum Chemistry,Courses,Lessons,Art
wrks≔Absorption&Quantization.mw,AbsorptionSpectra.mw,Color&Absorption.mw,ColorPerception.mw,ColorSpaces.mw,ColorVisionDeficiency.mw,EMSpectrum.mw,Photons&Energy.mw,Pigments&Dyes.mw,QuantumChemistryOfDyes.mw
topics≔Absorption&Quantization,AbsorptionSpectra,Color&Absorption,ColorPerception,ColorSpaces,ColorVisionDeficiency,EMSpectrum,Photons&Energy,Pigments&Dyes,QuantumChemistryOfDyes
dir2 := cat(dir0,"/qcomputing");
dir2≔C:/Users/david/Documents/My Maple/Maple 21/QCT2025/HelpPages/qcomputing
pkg := "QuantumChemistry/QuantumComputing/";
pkg≔QuantumChemistry/QuantumComputing/
topic := "Toolboxes","Quantum Chemistry","Quantum Computing";
topic≔Toolboxes,Quantum Chemistry,Quantum Computing
wrks≔ConvertDirac.mw,Gate.mw,InitialState.mw,MeasureState.mw,Overview.mw,PrepareState.mw,QubitPopulations.mw,QubitPopulationsPlot.mw
topics≔ConvertDirac,Gate,InitialState,MeasureState,Overview,PrepareState,QubitPopulations,QubitPopulationsPlot
for k to nops(wrks) do if topics[k]="Overview" then makehelp(cat(pkg,topics[k]), cat(dir2,"/",wrks[k]), helpfile, browser=[topic,topics[k]], showhelp=false, aliases=["Quantum Computing", "QuantumComputing", "quantum computing", "quantumcomputing"]); else makehelp(cat(pkg,topics[k]), cat(dir2,"/",wrks[k]), helpfile, browser=[topic,topics[k]], showhelp=false); fi; od;
HelpTools:-Database:-SetAttribute(helpfile,'readonly',true);
Download Help Document