Skip to content

Comments

[pull] master from MRChemSoft:master#92

Open
pull[bot] wants to merge 199 commits intostigrj:masterfrom
MRChemSoft:master
Open

[pull] master from MRChemSoft:master#92
pull[bot] wants to merge 199 commits intostigrj:masterfrom
MRChemSoft:master

Conversation

@pull
Copy link

@pull pull bot commented Sep 16, 2025

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

Gabrielgerez and others added 30 commits July 11, 2024 09:31
Close #419 We now use qcelemental to fetch Bondi radii, and use alpha=1.2 for hydrogen

---------

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>
* cavity function used directly instead of projected first

* clear d_V

* Update SCRF.cpp 

define ranks in accelerator, so that all mpi ranks use kain

* cavity function used directly instead of projected first

* clear d_V

* Update SCRF.cpp 

define ranks in accelerator, so that all mpi ranks use kain

* manage to pull down to 12.2 and 30.0 gb

* reduced memory usage to ca. 3 gb from 8 gb

* Remove print statement for memory

* Small changes to desctructor and clear

* Use latest MRCPP

* Use default initialization in header file

* Do some cleaning after feedback

* Remove ´optimizer´ option from inputs

* Fix tests

---------

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>
Co-authored-by: Gabrielgerez <gsa017@uit.no>
* Convert default radii to bohr when input units are not angstrom
* Update template.yml (formatting and documentation)
* Refine fix for unit conversion of cavity params, add tests
* Refactor the Permittivity function
for ease of future implementation work.

* Add ShiftFunction to CMakeLists

* Add virtual and override where necessary

* Remove evalf definition from shiftFunction

* Rename ShiftFunction to StepFunction

* Update src/environment/Permittivity.cpp

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>

* Update src/environment/StepFunction.cpp

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>

* Update src/environment/StepFunction.cpp

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>

* Update src/environment/StepFunction.cpp

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>

* Update src/environment/StepFunction.h

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>

* Update src/environment/StepFunction.h

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>

* Pass cavity as a shared_ptr to save memory.

* Fix rebase error

* Remove use for `flipFunction` in Permittivity

* Update src/environment/Permittivity.h

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>

* Update src/environment/StepFunction.cpp

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>

* Add print_header to detail namespace

* Update src/environment/StepFunction.h

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>

---------

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>
* Use C++17

* Use std::tie to unpack tuple return value

* Remove some cruft from Cavity and Permittivity

* SCRF deals in densities only, not orbitals

* Refactor Reaction{Potential,Operator} following Coulomb example

In preparation for the computation of the response terms, we make ReactionPotential abstract and add
subclass ReactionPotentialD1 to deal with one single set of orbitals.

* Modify input to accept static and dynamic permittivities

* Handle nonequilibrium solvation more gracefully

* Sign change was necessary

* Update input parser

* Small fixes to include order

* Rename section for permittivity outside

* Add tests
gitpeterwind and others added 30 commits November 25, 2025 09:46
Small fix to ease compilation under MAC
needs to be close to the class definition
Removed the unused get_my_chunk function from orbital_utils.cpp.
More consistent numerical results and repaired exchange
* first version two electron integrals

* print times for two electron integrals

* bug shared potential (code hangs)

* 2 el integrals test and change indices order

* add two electron integrals test file

* remove obsolete rescaling for Zora (taken care by mrcpp now)

* update test results for new mrcpp (default for crop is absprec=true)

* more test results updates for new mrcpp (default for crop is absprec=true)

* lower test threshold for xc_hessian_pbe

* Update tests/qmoperators/two_el_int.cpp

Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>

---------

Co-authored-by: Luca Frediani <luca.frediani@gmail.com>
Co-authored-by: gitpeterwind <peterw@met.no>
Co-authored-by: Roberto Di Remigio Eikås <robertodr@users.noreply.github.com>
* rebased master; fixed some last warnings

* fetched wrong MRCPP
* initial conversion of occupancies from integer to double

* Initial implementation of core hole calculations

* Switching logic so that restricted checks depend on doubly occ (only happens for rest) not singly occ (which could be unrest or rest with a hole)

* XX with occupancies

* updating input file for explicit occupancies

* fixing occupancies/spin factors for XX in restricted calculations

* removing unneeded print statement

* adding positions of the orbitals to enable association with a particular atomic orbital

* first try

* restricted MOM

* first try for IMOM; only IMOM in this version

* first cleanup, code now readable, but longer

* small bugfix

* added input in input parser for MOM/IMOM

* small bugfix

* new logic to treat different occupation numbers; cleanup

* small formatting

* small temporary fix in restricted occupations

* print orbital occupations as doubles instead of integers

* for now only removal of one electron possible#

* small bugfix in ExchangePotentialD2.cpp

* bugfix in initial guess

* IMOM: fetch Orbitals before calculation of initial guess energy; some general cleanup; added first test for DeltaSCF

* small bugfix in test

* small bugfix in driver.cpp and some changes to the core-hole test

* added tests

* changing copies to deep_copies

* some cleanup + some more output depending on print level

* - Implemented partial localization for different occupations
- Fixed values for tests
- some cleanup

* small bugfix for unrestricted MOM/IMOM calculations

* remove partial localization

* added tests for unrestricted IMOM; some cleanup

* small cleanup

* incorporated PR comments

* first try

* first try for IMOM; only IMOM in this version

* first cleanup, code now readable, but longer

* added input in input parser for MOM/IMOM

* new logic to treat different occupation numbers; cleanup

* small formatting

* IMOM: fetch Orbitals before calculation of initial guess energy; some general cleanup; added first test for DeltaSCF

* small bugfix in test

* small bugfix in driver.cpp and some changes to the core-hole test

* added tests

* changing copies to deep_copies

* some cleanup + some more output depending on print level

* - Implemented partial localization for different occupations
- Fixed values for tests
- some cleanup

* small bugfix for unrestricted MOM/IMOM calculations

* remove partial localization

* added tests for unrestricted IMOM; some cleanup

* small cleanup

* make code mostly compilable

* cleanup

* fixed bug in calculation of number of electrons that lead to failing tests

* updated test references for core-hole and IMOM tests

* fixed MPI print issues, split tests to avoid timeout

* added missing files

* updated tests

* storing mom orbitals in the Molecule object

---------

Co-authored-by: Laura Ratcliff <laura_ratcliff@hotmail.com>
Co-authored-by: Niklas Göllmann <niklas@tromso-eksterne-763.wifi.uit.no>
Co-authored-by: Niklas Göllmann <niklas@tromso-eksterne-2394.wifi.uit.no>
* implement nlcc pps

* get rid of numpy dependency

* print nlcc data

* implement f projectors untested

* remove print

* add getatomic number function

* make sad work for pp

* new way to project rho

* clean things up

* remove more prints

* speed things up

* add basis for all elements

* test spherical harmonics

* make test work or other alphas

* remove writing of user dict for debug purposes

* add a couple of virtual orbitals

* renove virt. orbs

* improve test

* make projector not function

* deepcopy to be safe

* debug print

* lots of debyug

* make sure projector is projected

* remove some copies

* make sure nlcc rho gets projected

* mix it a bit

* move mixing calculation to sad initial guess

* new parameters

* calcuclate mixing energies

* go to pbe

* adnjust test

* for marco

* add orbitals

* read file

* make it run again

* add getter

* improve switch_sperics

* this does nearly work

* fix bug

* sp[in changes

* maybe

* rescale intitial charge

* more orbitalsfor gold

* precompute kin and nuc mat

* remove print

* start migrating stuff

* restore sad initial guess

* add new initial guess type

* parse new mixing parameters

* implement nao intial guess in driver

* fix bug

* add timer

* revert gsf

* revert core

* fix projection

* better prints

* gold has even f orbital

* update template and helper

* update parser

* fix typo

* change yet another thing

* add nao directory logic to mrchem

* include unoccupied orbitals in nao basis.

* add na pseudopotential test

* better tolerances

* quick and dirty

* improve code

* (un)safe changes

* add doc

* fix bug reading c

* start on good pp

* improve pp

* add one to lmax

* remove old implementation of data type

* clean up code

* rename stuff

* move files

* add multi elements

* add first draft of projector

* add exponential factor

* improvements

* add sketch of projectoroperator

* add some docs

* more docs

* introduce shift

* change types

* add constructor

* doc

* fix silly errors

* reintroduce old stuff

* minor fix in file format

* fix qmfunctionvector naming

* improve constructor

* make parent class public

* start dotting

* apply compiles

* make it segfault

* add prints

* add more prints

* more prints

* more prints and fix bugs

* single s projector working

* printprintprint

* fix bug

* p orbitals working

* add pp section

* start python stuff

* update params

* first logic done, todo parse psppar

* add parsing of psppar files

* json mess

* small change

* use different format

* example in driver working

* add getters

* integrate pp-data

* add new constructor to nuclei and add function that checks if a pp exists

* put pp into molecult

* add other constructor to get rid of final occurence of set_charge

* update mechanism from pp nucleus

* mixed sims working

* update parser

* input logic working

* compute molecular charge differently

* fix bug

* comment a lot of print

* make core initial guess work for pps

* add has pp function to molecule

* force core initial guess if pps are used

* remove r^-l factor for numerical stability

* remove a lot of prints

* parse nlcc terms

* implement nlcc pps

* get rid of numpy dependency

* print nlcc data

* implement f projectors untested

* remove print

* add getatomic number function

* make sad work for pp

* new way to project rho

* clean things up

* remove more prints

* speed things up

* add basis for all elements

* test spherical harmonics

* make test work or other alphas

* remove writing of user dict for debug purposes

* add a couple of virtual orbitals

* renove virt. orbs

* improve test

* make projector not function

* deepcopy to be safe

* debug print

* lots of debyug

* make sure projector is projected

* remove some copies

* make sure nlcc rho gets projected

* mix it a bit

* move mixing calculation to sad initial guess

* new parameters

* calcuclate mixing energies

* go to pbe

* adnjust test

* for marco

* add orbitals

* read file

* make it run again

* add getter

* improve switch_sperics

* this does nearly work

* fix bug

* sp[in changes

* maybe

* rescale intitial charge

* more orbitalsfor gold

* precompute kin and nuc mat

* remove print

* start migrating stuff

* restore sad initial guess

* add new initial guess type

* parse new mixing parameters

* implement nao intial guess in driver

* fix bug

* add timer

* revert gsf

* revert core

* fix projection

* better prints

* gold has even f orbital

* update template and helper

* update parser

* fix typo

* change yet another thing

* add nao directory logic to mrchem

* include unoccupied orbitals in nao basis.

* add na pseudopotential test

* better tolerances

* adjust catch include

* quick fix of dft functional error.

* update psp test

* update for new mrcpp

* new interface

* change filename in docs

* add some documentation

* remove duplicate docs

* add explanations

* cleaner prints

* use mrchem logging

* update test values

* add manual

* fix typo

* run update_input_parser

* fix brace

* set has_pp_data in constructor

* explain scaling of k

* use ang_mom_char

* use eigen maps

* minor formatting

* revert type set to int

* add commented debub print again

* fix typo in abort message

* remove tightening of precision for debugging

* use std::tgamma

* remove unnecessary comments

* remove uneccessary comment

* move docstring to header

* use gaussian from mrcpp

* fix typo in mrchem and regenerate docs

* make new helper functions const

* formating

* remove unnecessary fields

* adjust print

* remove debug prints

* change loop type to size_t

* Added override to all six methods that override virtuals from QMOperator: setup, clear, apply(Orbital), dagger, evalf, and apply(shared_ptr<QMOperator>&).

* delete empty line

* use ||

* make projection cleaner

* add integration weights and update readme

* use previous value for broad sigma in max

* increase print level of orbital widths

---------

Co-authored-by: Moritz Gubler <moritz.gubler@e.email>
Co-authored-by: gitpeterwind <peter.wind@met.no>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants