forked from pyscf/pyscf
-
Notifications
You must be signed in to change notification settings - Fork 20
/
CHANGELOG
1492 lines (1346 loc) · 53.9 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
PySCF 2.7.0 (2024-09-23)
------------------------
* Added
- Superposition of Atomic Potentials (SAP) initial guess for SCF methods.
- Supports pickle serialization for all methods.
- ADC 1-particle density matrix and dipole moment.
- Spin-separated 3-RDMs.
- Traceless quadrupole moment for SCF methods.
- Supports for fractional coordinates in Cell.
- Population analysis for KSCF.
- A, B matrices for k-point TDRKS.
- AutoAux scheme for generating auxiliary basis sets.
* Improved
- Automatic cleanup for HDF5 temporary files.
- Saves CI coefficients for SA-CASSCF to chkfile.
- UHF/UKS initial guess with better spin-symmetry breaking code.
- New attribute .cycles in SCF methods and CC methods to save iteration counts.
- FFT performance.
- CPHF convergence in nuclear hessian.
- Eigenvalue solver for linear response theory.
- Enhance TDDFT code with symmetry adaptation in diagonalization.
- More efficient PBC-CDERI loading.
* Fixes
- The missing atomic radius parameters for the Treutler-Ahlrichs scheme in DFT grids
- Symmetry adapted GHF with complex orbitals.
- Complex-valued FCI matvec operation.
- Bug in Smearing-RHF for odd number of electrons and disable Smearing-ROHF.
- MP2 FNO bug when pct_occ=1 .
- DHF dipole moment.
- Bug in PBC ECP integral.
- Bug in parser for spin-orbit ECPs.
- Wrong transition dipoles of triplet TDDFT states.
- GHF-X2C dipole moment.
- FCI symmetry validation code for cylindrical symmetry.
- Missing complex conjugation for complex orbitals in SymAdaptedGHF.
- Custom UHF objects using the Hamiltonian in FCIDUMP.
PySCF 2.6.2 (2024-06-19)
------------------------
* Fixes
- Compatibility issues for NumPy 2.0 release.
PySCF 2.6.1 (2024-06-17)
------------------------
* Improved
- Allow for custom options for opening h5py file.
- Linear dependency threshold for density fitting auxiliary basis.
* Fixes
- Compatibility issues due to NumPy 2.0 release.
PySCF 2.6.0 (2024-06-01)
------------------------
* Added
- SMD and PCM solvent model
- Nuclear Hessian for SMD and PCM solvent models
* Improved
- DFT-D3 and DFT-D4 interfaces. Supporting assigning the acronym such as
WB97M-D3BJ, WB97M-D4 to the xc attribute.
- Optimized density fitting performance.
- Memory usage for RPA.
- FCI coefficients transformation for more than 64 orbitals.
- Multi-grid DFT performance greatly optimized.
* Fixes
- CASCI/CASSCF calculations when mixing C1 symmetry and symmetry=False .
- "atom" initial guess for ECP with super-heavy atoms.
- Complex conjugation issues in single k-point JK-build in PBC DF.
- CCSD(T) for complex orbitals.
- Dipole moment in SFX2C.
- High-order XC derivatives.
- Integer overflow in FCI large address.
- Multi-collinear XC higher order derivatives.
- Smearing with predefined chemical potential.
- Fix frozen attribute for MP2 density matrices.
PySCF 2.5.0 (2024-02-03)
------------------------
* Added
- SA-CASSCF Nonadiabatic Coupling Vectors
- The to_gpu function to convert pyscf objects to gpu4pyscf objects.
- 4th, and 5th order XC derivatives.
* Improved
- DIIS with damping for gapless systems.
- CPHF solver with level shift for gapless systems.
- The memory footprint for rsdf_builder and rsjk_builder.
- Use UHF natural orbital for RHF chkfile initial guess.
- Pipek Mezey + Stability check using Jacobi sweep.
- The conversion between FCI strings and addresses for more than 64 orbitals.
- The interface to the dftd3 and dftd4 dispersion correction modules.
- Switch off the sparsity treatment in DFT numerical integration for small system.
- Lattice-sum cutoff for non-orthogonal cell.
- Allow turning off AO symmetry for PBC DFT.
* Fixes
- cp2k basis parsers
- k2gamma for dft classes.
- Mole.magmom attribute serialization error.
- post-hf Gradients with Cartesian GTOs.
- Basis order problem in molden.load .
- PBC DFT Becke grids rounding error.
- PBC rsdf for un-sorted basis.
- The get_bands function with k-point symmetry.
PySCF 2.4.0 (2023-10-16)
------------------------
* Added
- Mulliken population analysis for KGHF.
- Interface to libmsym (https://github.com/mcodev31/libmsym) for handeling non-abelian symmetry.
- A variant of the Hückel initial SCF guess.
- PBC TDDFT with non-zero particle-hole momentum transfer for GDF/RSDF (same as the kshift used in pbc eom-ee-ccsd).
- PBC TDDFT with twisted boundary conditions (both single k-point and k-point mesh).
- NVT Molecular Dynamics.
- Gaussian charge model for int1e_grids.
- GHF with fractional occupancy.
- FCIDUMP for MCSCF orbitals.
- DF-CCSD and frozen core for FNO-CCSD.
- multi-collinear functional for PBC DFT.
- non-local functional (VV10) for PBC DFT.
- "undo" method for dynamic classes. This method can revert the action for conversion methods such as "density_fit()", "x2c()", "newton()", "as_scanner()", etc..
- Merged basis parser for molecular GTO basis and GTH basis. GTH basis can be assigned to Mole object directly.
- Merged ECP and PP parser. PP can be assigned to Mole object directly.
- C-PCM, IEF-PCM, COSMO, and SS(V)PE solvent models and their Gradients.
* Improved
- Performance of the gradients of nuclear repulsion energy.
- JK builder for short-range ERIs.
- The layout of the Mole class and Cell class. Remove the inheritance between Cell and Mole.
- The layout of various SCF classes and the conversion methods (to_ks, to_hf, to_uhf, to_ghf, etc.) between different SCF objects.
- The layout of various MCSCF classes.
- New style to generate dynamic class for DF methods, X2C, QMMM, SOSCF, Solvent model, StateAverageMCSCF, Scanner methods, etc.
- SCF smearing method.
- Make Mole and Cell object picklable.
* Fixes
- supercell symmetry.
- NAO orbital localization.
- Finite-size correction for PBC TDDFT (1/Nk convergence to TDL and agreement with molecular code).
- Bugs in FCI for num. orbitals >= 64.
- PBC empty cell error.
- The edge case CAS(2,2) for Selected CI.
- Dimension issue in PBC-GDF cderi tensor.
- Assume 46 and 78 core configurations to be f-in-valence.
- Coding styles and deprecated warnings from numpy.
PySCF 2.3.0 (2023-07-04)
------------------------
* Added
- Gaussian MM charges
- Stepsize scheduler for UCASSCF
- APC active space selection
- f-in-core ECPs and core configurations
- TDDFT gradients for triplet states
- Support complex-valued h1e in fci_slow.absorb_h1e
* Improved
- Update B3LYP functional to correspond to the original definition
- Disable CLI parser by default
- Accuracy and performance of RSDF, GDF and RSJK methods
- get_lattice_Ls, and energy cutoff estimation
- Performance of PBC-AFTDF get_k method
- BCCD with semi-canonicalized orbitals
- Smearing in the molecular ROHF method
- Refactors FCI cylindrical symmetry implementation and improves its stability and performance
- Update interface of geomeTRIC library to support initial hessian
- NLC parser and NLC integral code
* Fixes
- Update ddCOSMO functional to make it behave the same to Gaussian
- Deprecated keywords when calling scipy.linalg.solve
- The numerical issue in df hessian when the overlap matrix is ill-conditioned
- PBC-DFT eval_rho2 method
- xc parser for hybrid LDA functional
- SACASSCF grad fcasscf right track nelecas
- density fitting for GHF objects
- Fix bug in MP2 gradients scanner
PySCF 2.2.1 (2023-03-29)
------------------------
* Added
- Density fitting gradients and hessian for RSH functionals
- SCS-MP2 and SCS-KMP2
- Configurations of f-in-core ECPs
- ao2mo integral transformation for GHF orbitals with scalar ERIs
- Interface to access basis Set Exchange DB
- DF-UCISD
- Moment resolved GF-CCSD
- MOM (maximum overlap method) for GHF and DHF
* Improved
- PBC GDF K-build performance
- Read cubegen for crystalline systems
* Fixes
- Outdated examples
- Update to libcint 5.3.0 to filter warning messages produced by 5.2.0
- PBC density fitting CDERIArray object backward compatibility
- DIIS numerical instability
- C2v molecule orientation when symmetry is enabled
- The missed HF exchange in RSH functional wB97
- Gauge origin of Boys localization
- Check the root numbers during Davidson diagonalization iterations
- Removed hard-coded environment variable MKL_NUM_THREADS=1
- Conflicts in GDF cderi tensor for RSH functionals
PySCF 2.2.0 (2023-03-09)
------------------------
* Added
- Molecular nuc grad with DF ERIs for ROHF, ROKS, CASSCF, SA-CASSCF
- K-point symmetry adapted crystalline orbital basis
- K-point symmetry for GDF, MDF, KCCSD
- VV10 gradients
- Spin density population analysis for MCSCF
- BCCD
- Cylindrical symmetry for FCI wavefunction
- Use a linearly independent basis in DIIS
- Full CI for complex integrals
- Maxwell-Boltzmann Velocity Distribution in BOMD
* Improved
- PBC integral accuracy for GDF, MDF, FFT, AFT
- PBC integral accuracy of 2D system for insufficient integral grids
- Update Libxc to Libxc-6
- get_monkhorst_pack_size for numerical noise
- Unit recognization unified
* Fixed
- MCSCF without initializing SCF
- Memory leaks in C kernels for CCSD(T)
- Fully spin-polarized UMP2, DF-UMP2, UCCSD, UCCSD(T) bugfixes
- numpy_helper.hermi_sum for non-contiguous array
- Padding and frozen orbitals bugs in KMP2
- PolEmbed interface and CASCI with PE
- Molecular density fitting hessian
- K-point symmetry adapted KS-DFT with SOSCF solvers
PySCF 2.1.1 (2022-09-21)
------------------------
* Added
- CDERIArray class to load PBC GDF tensor
* Improved
- MCSCF fix_spin_ as a class for SA-CASSCF gradient compatibility
- PBC GDF and MDF accuracy
- PBC X2C hcore integrals performance
* Fixed
- Integral screening bug in ft_ao
- EOM-EE RCCSD intermediates
- MGGA fully polarized system bug
PySCF 2.1.0 (2022-09-01)
------------------------
* Added
- k-point symmetry for mean-field methods and MP2
- UCASSCF work with state_average
- make_rdm12s for MCSCF state_average
- Staggered mesh method for k-point restricted periodic MP2 energy
- PBC-X2C1E DFT methods in spin-orbital basis
- Adds make_rdm2 to RHF and UHF
- Auto-generate frozen-core orbitals
- Atomic chemical core configuration
- Various MGGA functionalities (Gradients, Hessian, TDDFT, etc.)
- Mcfun (multi-collinear functional) and relevant GKS, DKS, X2C-DFT, TDDFT methods for molecules
- Supports to aarch64 architecture
- Atomic spherically averaged DFT and add HFS ground-state configurations
- RPA, URPA
- UCCSD with density fitting
- X2C for GHF/GKS on spin-orbital basis (make identical to X2C-SCF with j-adapted basis)
- Gamma-point periodic EA/IP-ADC
- K-point periodic EA/IP-ADC
- CVS-IP-ADC
* Improved
- DFT numerical integral module with better integral screening
- Aligns E(HF) of KRCCSD with other CCSD classes, and CISD, MP2 classes
- Adjustable screening value for eval_ao function
- MCSCF convergence for small systems
- Renormalized perturbative triples correction in CCSD
- Optimises UCCSD 1DM
- Linear dependency handled for IAOs
- vhf prescreeening efficiency
- Lattice sum ranges in PBC AO-value evaluation
- Various cutoffs in PBC integrals for exceptional cells
- Handles 1e system for KS methods
- Try to use original axes when creating Mole object if pointgroup is inputed
- More symmetry information of MCSCF active space dumped
- SA-CASSCF nuc grad API reform
- Upgrade cint library to v5
- Accelerating SGX module
- rsdf, gdf, aft, mdf, ft_ao, rsjk modules refactored and their performance are optimized
- The return status of HF statbility checks
- GDF 3-index integral tensor loader to support tensor sliced from disk
* Fixed
- Dynamic level shift for UHF
- gamma-point TDDFT by adding response fn
- Initial guess issue for uhf custom Hamiltonian
- Projecting the dm to a larger basis set in PBC systems using from_chk() and init_guess
- Ensure deterministic result from pyscf.lib.einsum
- Symmetry detection bugs and C2v orientation for planar molecules
- State-average CASSCF 1RDM for orbital canonicalization
- wfnsym for state_average CASSCF
- Concatenating two Molecule objects with ecp
- cisd.tn_addrs_signs for impossible excitations
- KMP2 takes KHF with precomputed GDF integrals
- Huckel guess with mol.cart=True
- UCCSD 2RDM without frozen
PySCF 2.0.0 (2021-11-01)
------------------------
* Added
- Basis selector '@' to load basis from a file
- Native version of DF-MP2 for RHF and UHF references
- Cholesky orbitals as the initial guess for iterative orbital localization.
- FNOCCSD
- SCS-DF-MP2
- Relaxed RHF-DF-MP2 density
- int1e_grids function to compute Coulomb integrals for a list of grids
- GDF-KMP2
- Custom Hamiltonian for UHF
- Natural Orbitals for DFCASCI and DFCASSCF with approximate CI solvers
- slow and fast QCISD and QCISD(T) for restricted refs
* Improved
- Pacakge layout, static checks, and code releasement pipeline.
Certain features were removed from core modules, including: cornell_shci,
dftd3, dmrgscf, doci, fciqmcscf, icmpspt, mbd, Molpro2Pyscf, mpicc, nao,
semiempirical, shciscf, tblis, prop/efg, prop/esr, prop/freq, prop/gtensor,
prop/hfc, prop/magnetizability, prop/nmr, prop/nsr, prop/polarizability,
prop/rotational_gtensor, prop/ssc, prop/zfs
- Compatibility improvements for Python 3.6 and newer
- Compatibility improvements for h5py 3.0 and newer
- Online documentation (https://pyscf.org/user.html)
- Upgrade Libxc to 5.1.7
- FCIDUMP interface to include ECP scalar contribution
- DMRG interface
- Ghost atoms in IAO/IBO
- PBC-GDF auxiliary basis treatment with nonzero drop_eta
- pivoted Cholesky factorization
- Support high angular momentum in GTO basis (up to l=15)
- Make Exact FF GW root finding more robust, reduce eta
- cubegen for arbitrary unit cells
- Range of lattice sum for non-orthogonal lattice
- krkspu
- Number of calls to gc.collect()
* Fixed
- PBC-GDF and PBC-MDF when computing RSH functionals
- The edge case for zero beta electrons in SCF
- Atomic initial guess if multiple elements have ecp
- The ordering of unique points in kpts.unique function
- J matrix of AFTDF
- kuccsd rdm1
- GDF int2c2e integrals for non-symmetric range of lattice sum
- Complex-valued symm. adapted basis
- NEVPT2 for multistate CI wave function
PySCF 1.7.6 (2021-03-28)
------------------------
* Added
- KMP2 2-particle density matrix
- PBC J, K matrices module rsjk (RangeSeparationJKBuilder)
- ADC (RADC, UADC, DFADC)
- Eigenvector analyzer for IP and EA, RADC and UADC
- Analytical nuclear gradients for state-average CASSCF
- Support SO3 symmetry
- ECP-SOC for GHF/GKS
- density fitting GMP2
- G0W0 approximations (analytic continuation, contour deformation)
- Auxiliary second-order Green's function perturbation theory (AGF2)
- Smearing for molecules
- Visscher small component correction approximation for DHF
* Improved
- Threading safety in Mole temporary context
- Basis parser to support arithmetic expressions in basis data
- dmrgci interface refactored
- MP2 gradients performance
- Interface of polariazable embedding with integral batching
- Electron-phonon Hamiltonian module refactored
- Remove memorization of Ewald parameters.
- molden dumper refactored
* Fixed
- stack overflow in ecp integral code
- SCAN functional crashing problem
- Ghost atoms for IAOs/IBOs
- Fix fractional occupations for case of zero beta electrons
- mcscf project_init_guess
- Symmetry verification bug when deducting subgroup
- Mole.set_geom_ bug
- GDF with non-zero drop_eta (for diffused auxiliary basis)
- Paddings in KMP2 when remove_linear_dep_ is applied
- SC-NEVPT2 Sijr Srsi
PySCF 1.7.5 (2020-9-27)
-----------------------
* Added
- Upgrade cint library to v4
- Upgrade xcfun library to v2.1.0
- Kramers' restricted Dirac-Hartree-Fock, X2C, DHF-SOSCF
- Heavy elements basis in MINAO
- Coulomb integrals of short range part for attenuated Coulomb
- Polarizability and hyperpolarizability under PBC
* Improved
- Support pseudo potential Atomic HF
- Atomic HF for 1-electron system
- Check basis angular momentum in mol.intor (l < 7)
- FCIDUMP wrapper fcidump.py
* Fixed
- Bugs in Mole.fromstring
- Buffer size bug in DHF JK builder for very small systems
- Fix pbc-eom-eaccsd_star bug
- Bugs in integral screening for very tight direct_scf_tol
PySCF 1.7.4 (2020-8-2)
----------------------
* Added
- FCIDUMP reader to load FCIDUMP and generate custom system.
- Natural orbitals occupations to mc.mo_occ
- Supporting UHF orbitals in FCI factory function
* Improved
- Linear dependency treatment for basis uncontraction
* Fixed
- ECP gradients bug when the system contains two or more ecp atoms
- CHGCAR writer
- Basis parser for basis in Gaussian 94 format
PySCF 1.7.3 (2020-6-10)
-----------------------
* Added
- CcECP basis
- Spin 1RDM for shci
- PM localization for charge populations based on Becke partition
* Improved
- Compatibility of get_jk methods between mcscf class and scf class
- CPPE interface
- Interface between IAO and PM
* Fixed
- an CCSD integral bug introduced in 1.7.1
- Td as its subgroup C2v
- Fix an error when calculating grad of dft method with "HF" as xc
PySCF 1.7.2 (2020-5-13)
-----------------------
* Added
- Electron-phonon Hamiltonian under PBC (pbc.eph)
- State-average CASSCF example
- Spin density analysis to uhf.analyze()
- Passing point group and wfnsym to Dice
- Analytical nuclear gradients for PBC SCF methods (based FFTDF)
- Geometry optimizer and Gradients scanner for pbc
- ccECPs and corresponding basis sets
- Interacting hybrid method i-CCSD/MP2
- Allow FNOs to be specified by number of active virtuals
- Enable frozen natural orbital CC
- Partial Cholesky orthogonalization
- Use requested initial guess in DHF
* Improved
- libxc5 compatibility
- Redundant def2-*-jkfit basis sets were replaced by the def2-universal-jkfit basis
- FCIDUMP reader
- Treatment of breaksym in UHF init_guess function
- literature references and DOIs
- Ensure active orbitals are not changed during MCSCF canonicalization
- Improve linear dependency treatment in projection function in scf/addons.py
- Use customized get_xmat method for x2c if applicable
* Fixed
- Integral bug in magnetizability
- Integer overflow in multigrid
- pbc.mdf h5 file initialization
- density fitting auxiliary basis for cc-pV*Z
- Handle basis and pp for ghost atoms in pbc initialization
- ecp treatments for ghost atoms
- FCI wfnsym initial guess
- SCF initial guess for super-heavy elements
- Initial guess "atom" due to missing basis
- Bugs of prefix ghost
- Handle duplicated primitives in GAMESS WFN writer
PySCF 1.7.1 (2020-2-29)
-----------------------
* Added
- Equilibrium solvation for TDDFT
- ddcosmo TDDFT gradients to support TDDFT geometry optimization with solvent
- Polarizable embedding solvent model
- Non-canonical MP2
- Algebraic diagrammatic construction method
* Improved
- Atomic configuration in SCF initial guess
- IBO valence space configurations
- For icmpspt restart option and default settings
- TBLIS interface and compilation configurations
- DFT-KS initialization factory functions
- reset methods in many modules for scanner mode
- HF/KS conversion functions
- APIs for HF/KS response functions (used by TDDFT and other methods)
- transform_ci function to allow projection between FCI wavefunction in
different sizes
- The fractional occupancy atomic HF method in SCF initial guess
- Performance of non-local XC functional
- FCI Performance
- stability of linear equation solver in dynamic polarizability
- cubegen for PBC systems
* Bugfix
- Contributions of MM point charges in icmpspt energy
- ROHF and UHF orbital occupancy for negative mol.spin
- Four-component Dirac HF EFG tensor
- Avoid twice initialization in modules GDF, SGX etc.
- nuclear repulsion energy for single atom case
- MINDO gradients unit (from Hartree/Angstrom to Hartree/Bohr)
- Data prefetching bug in CCSD
- Total energy of CCSD and CISD with non-canonical HF reference
PySCF 1.7.0 (2020-1-1)
----------------------
* Added
- k-CCSD density matrix
- k-CCSD(T) with core frozen
- sgX method (a pseudo-spectral method like COSX)
- pre_kernel and post_kernel hooks in SCF driver
- Left eigenvectors of IP/EA-CCSD for molecular code
- EOM-IP/EA-KCCSD, EOM-IP/EA-KRCCSD
- Methods EOM-IP/EA-KCCSD(T) T*(a), EOM-IP/EA-KRCCSD(T) T*(a)
- kEOM-IP/EA-CCSD*
- KUMP2
- KCCSD function spatial2spin that transforms amplitudes in spatial orbital
representation to that in spin-orbital representation
- DOCI solver, DOCI-CASCI, and DOCI-CASSCf
- Support of RSH functionals in methods DF and sgX
- Add RSH functionals for all PBC DFT methods
- Semi-empirical method MINDO/3
- Analytical nuclear gradients with density-fitting
- Analytical nuclear hessian with density-fitting
- Thermo-chemistry and frequency analysis
- Huckel HF/KS initial guess
- QM/MM with implicit solvent
- Spin-Orbit ECP integrals
- Geometry optimization for state-average MCSCF method
- cube file parser
- Orbital localization methods VVO and LIVVO
* Improved
- Optimized regular get_j and density-fitting get_j
- Faster k-CCSD(T)
- Davidson diagonalization for multi-roots
- memory usage in CCSD
- Molecular orientation does not need to be changed when symmetry is enabled
- Performance of density fitting initialization
- Performance of JK-build function
- Using direct_spin1 as the default FCI solver
- Performance of SOSCF method (by using the direct-SCF technique)
- Performance of semi-incore AO-MO integral transformation
* Bugfix
- Carbon ANO data
- Initial guess for EOM-KCCSD
- state-average CASSCF analytical nuclear gradients
- ddCOSMO self-consistency (as fast solvent) for post-SCF methods
- range-separation parameter omega customization in RSH functionals
PySCF 1.6.6 (2020-1-1)
----------------------
* Improved
- Sanity check for Wigner-Seitz cell exchange kernel
- The linear dependency treatment for X2C uncontracted basis
- Energy cutoff estimation for non-orthogonal lattice
- Tolerance in geometry when detecting point group symmetry
* Fixed
- TDDFT symmetry representation
- cube file when containing ECP
PySCF 1.6.5 (2019-11-17)
------------------------
* Added
- spin_square method for UCCSD
* Improved
- Handling ".xc = None" (run DFT without exchange)
* Fixed
- Unit conversion bug between eV and wavenumber in TDDFT
- KGHF orbital gradients
- Analytical gradients for implicit solvent model in geometry optimization
PySCF 1.6.4 (2019-09-14)
------------------------
* Added
- aug-cc-pwCV*Z basis
* Improved
- Memory footprint of FCI module
- Mole.spin initialization. A guess can be made for spin multiplicity based on
neutral system.
* Fixed
- PBC SCF orbital canonicalization
- Missed complex conjugation in HF/KS modules
- SHCI runtime directory
- Normalization issue for Cartesian basis in Molden output
- cc-pwCV5Z basis
PySCF 1.6.3 (2019-07-28)
------------------------
* Added
- cube customization for cubegen
- Integral prescreening for RSH functional when evaluating K matrix
* Improved
- Performance of exchange integrals in RSH functionals
* Fixed
- handle xc = '' in eval_ao
- cube shape in cubegen
- Basis parser when parsing last elements in some basis set
- ROHF-SOSCF for diatomic molecules
PySCF 1.6.2 (2019-6-17)
-----------------------
* Added
- Slow version of KTDSCF and KGW methods for molecular systems
- Slow version of TDSCF and GW methods for PBC systems
- The support of various dtype (int, complex etc.) in numpy_helper functions
- Point group symmetry conservation in geometry optimization
* Improved
- DFHF class structure and method hooks
- Sanity checks when saving and loading FCIDUMP file
- Integral performance for solvent model
- Integral performance for QM/MM interface
- GCC 9 compatibility
* Bugfix
- Cartesian GTOs was not handled in RSH integrals
- geometric_solver for latest geomeTRIC release
- Initial guess of orbital localization solver
- MCSCF analyze function for state-averaged calculations
- The zero-norm bug in the non-hermitian matrix diagonalization function when
solving the complex eigenvectors for real eigenvalues.
- IOError when reading initial guess from chkfile in SCF scanner function
PySCF 1.6.1 (2019-03-15)
------------------------
* Added
- k-point orbitals to gamma-point orbitals transformation function k2gamma
- Wigner D-matrix and d-matrix
- The interface geometric_solver to geometry optimization library geomeTRIC
- k-CCSD(T) for PBC k-point sampled systems
- AO basis truncation shortcut "@?s?p?d"
- Function in basis parser to restore general basis contraction from NWChem
optimized format
- inertia_moment function in Mole object
- keyword resolution in CHGCAR writer
- IAO for each k-point in PBC systems
* Improved
- Geometry optimization module (GeometryOptimizer class, output format etc.)
- SCF Gradients class. A hook "extra_force" was added.
- MRLCC2 interface
- Import gradients, properties, solvent, and all post-SCF/extended methods in SCF class
- DFT-D3 interface
- Pople basis parser (supporting e.g. 6311++g(2d,p)).
- Normalizing SCF initial guess in PBC (to the right number of electrons/cell)
- mesh estimation for inf-vacuum
- Tuned threshold in point group symmetry detection functions
- SCF summary in the output message
* Bugfix
- Solvent object initialization in SCF scanner function
- GHF get_jk function
- QM/MM object initialization in SCF scanner function
- Missing virtual orbitals in MCSCF project_init_guess function
- MINAO basis data
- Analytical Fourier transform zero elements when basis functions do not overlap
- make_rdm1 function in state_average mcscf wrapper
PySCF 1.6 (2018-12-31)
----------------------
* Added
- DFT-D3 interface
- semi_incore ao2mo transformation
* Improved
- Linear dependency threshold of qr decomposition in davidson solver
- Optimized KUCCSD, EOM-KUCCSD performance
* Bugfix
- hasattr issue for attributes with @property
- DDCOSMO wrapper and kernel function
- Num eletrons bug in PBC smearing function for custom systems
- return value of NPTaggedArray ufunc (returning np array now)
- PBC density fitting dimension error caused by numerical noise when handling linear dependency
- Parsers for molpro basis and gaussian basis
- Selected-CI returned data type
PySCF 1.6 beta (2018-11-26)
---------------------------
* Added
- PBC k-point SCF stability analysis
- PBC KUCCSD
- PBC EOM-IP/EA-KRCCSD
- PBC EOM-IP/EA-KUCCSD
- Non-relativistic static and dynamic polarizability and hyper-polarizability tensor
* Improved
- The treatment of HF exchange in PBC system when calling PBC MP2, CISD, CCSD code
- Convergence performance of KCCSD iterations for low-dimension systems
* Bugfix
- Complex density in pbc.get_j function
PySCF 1.6 alpha (2018-08-15)
----------------------------
* Added
- X2C-UKS (LDA functional only)
- PBC gamma point ROHF/ROKS and GKS
- PBC KROHF/KROKS and KGKS for k-point sampling
- DFT Coulomb and XC integrals with multigrid
- Periodic UCCSD with k-point sampling
- perturbative DMRG method
- Interface to Cornell SHCI
- PBC dipole memont and Makov-Payne correction
- Overlap of two CISD wavefunctions
- EFG and Mossbauer spectroscopy of crystal and molecule
- Molecular magnetizability for HF and DFT
- ddCOSMO and ddPCM for MCSCF, MP, CI and CC methods
* Improved
- numint performance (eval_rho, eval_mat)
- Energy cutoff estimation
- CCSD convergency for 2D-PBC AFTDF, GDF and MDF methods
- Integral transformation performance in GW
PySCF 1.5.5 (2018-12-31)
------------------------
* Improved
- Fix symmetrization for k-point density in pbc.dft.numint.
- Molden parser to handle UHF orbitals
* Bugfix
- Get_fermi in KHF and KUHF
- Execute call in dmrgci
- Directories and paths in dmrgci
- Read of 3-pdm and 4-pdm produced by block-1.5
- Initialization wrapper in pbc.scf.__init__
- Complex density in pbc.get_j function
- Initial guess of KROHF method
- PBC get_jk interface when calling molecular MCSCF with pbc scf object
- keyword argument with_df of pbc.dft density_fit wrapper
PySCF 1.5.4 (2018-11-16)
------------------------
* Improved
- Add support for GTH pseudopotentials beyond d electrons
- Data structure of TDDFT response amplitudes (X, Y vectors): X[nvir,nocc] -> X[nocc,nvir]
* Bugfix
- OpenMP race condition in FCI solver
- Undefined HDF5 dataset in PBC MDF initialization
- TD-KRHF vind function
- SCF hessian
- interface between DMRG-CI and DMRG-NEVPT2. Making DMRG-NEVPT2 read Block
code settings in DMRG-CI.
- Dimension error in pbc.fftdf.get_jk for KUHF density matrix
- pbc.mpicc for keyword frozen
- Periodic pseudopotential calculations with ghost atoms
PySCF 1.5.3 (2018-09-06)
------------------------
* Bugfix
- get_jk prescreen for non-hermitian density matrices.
- Inaccurate estimation of memory usage in ccsd rdm.
- Frozen orbital EA-EOM-KRCCSD
- IOError due to 4GB chunk size limit in HDF5 library
PySCF 1.5.2 (2018-08-15)
------------------------
* Improved
- IO performance of pbc.GDF initialization
- Default linear dependence treatment in GDF to improve accuracy
* Bugfix
- Selected-ci 2-particle density matrices for two electron systems
PySCF 1.5.1 (2018-07-01)
------------------------
* Improved
- The memory usage for a large number of MM particles (issue #193)
* Bugfix
- Frozen orbitals in MCSCF canonicalization
- Dimension error when initializing DF-CCSD integral tensor
- EOM-EE-UCCSD initial guess and intermediates (issue #199)
- mpi ip/eaccsd w/ frozen orbitals
- the tdscf.get_nto function when mol.symmetry is enabled (issue #196)
- the interface between QMMM wrapper and the gradients of post-HF methods
PySCF 1.5 (2018-06-08)
----------------------
* Added
- Fake PySCF method adapter for arbitrary energy/gradients function in
berny_solver wrapper
- Function to restore DIIS object from DIIS file
- Restart function to restore CCSD calculations
* Improved
- CASSCF optimization step size
- State-averaged CASSCF output message
- RCCSD(T) and UCCSD(T) performance
- Reduced DIIS memory footprint
- Frozen orbitals for KRCCSD
- PBC-TDDFT eigenvalue filter to keeps more eigenvalues which has small
imaginary part
- FCI convergence tolerance
- Conversion between KRHF, KUHF, and KGHF
- In the SOSCF solver, the diagonalization code to handle singularity in Hessian
- In the Scanner function, to support an input of geometry (string or list)
- SCF convergence hook
- Density_fit hooks in mp2, cisd, and ccsd modules
- Warning for gapless system in ccsd
- Energy cutoff for PBC GDF method.
- XC functional parser to support '-' in XC name and XC functional
abbreviations (SVWN, BLYP, PBE, M05, etc.)
- Orbital frozen in core and virtual space for KMP2 and KCCSD modules
* Bugfix
- The ghost atom is now treated as a regular atom in berny_solver wrapper.
- QM/MM nuclear gradients
- Updating 6-31+G* basis which is now equivalent to the EMSL published basis
- Symmetry detection code to discover D2d, D4d, D6d group
- xcfun O3LYP functional which is now the same to libxc definition (but
different to the equation in the original paper)
- xcfun cam-b3lyp functional interface
- HCI wrapper to handle the system without beta electrons
- Dimension error for spinor integrals in general JK-build function
- The orbital ordering of the returned orbitals of the UHF stability analysis
- Filling up the upper triangular part for symmetry Hamiltonian in fcidump.read
- The attributes kpts and kpt of PBC SCF class when SCF data are loaded from
chkfile
- Nuclear Hessian in ECP and all-electron mixed systems
- Natural orbitals of state-averaged CASSCF
PySCF 1.5 beta (2018-04-15)
---------------------------
* Added
- ddCOSMO analytical nuclear gradients
- TDA and TDDFT analytical nuclear gradients for UHF and UKS
- CISD/GCISD/UCISD 1-particle transition density matrix
* Improved
- Memory usage of KRHF-KCCSD and IP/EA-EOM-KCCSD
* Bugfix
- Fock matrix of ddCOSMO and ddPCM method.
PySCF 1.5 alpha (2018-03-21)
----------------------------
* Added
- ddCOSMO solvent model
- VV10 NLC functional for molecule
- range-separated hybrid features for RKS and UKS, including
> Analytical nuclear gradients
> Second order SCF
> Hessian and frequency
> TDDFT
> TDDFT gradients
> NMR
- IAO and IBO for molecular and PBC systems
- UHF analytical nuclear Hessian
- UKS analytical nuclear Hessian
- FFT for low-dimension (2D) PBC systems
- Generalized CCSD (GCCSD)
- Generalized CCSD lambda solver
- Generalized Hartree-Fock with PBC
- PBC GCCSD and RCCSD with k-point sampling
- PBC GCCSD(T) and RCCSD(T) with k-point sampling
- RCCSD(T) and UCCSD(T) for non-canonical HF orbitals
- RCISD and UCISD analytical nuclear gradients
- RCISD, UCISD analytical nuclear gradients for excited states
- RMP2 and UMP2 analytical nuclear gradients
- UCCSD analytical nuclear gradients
- Frozen orbitals in MP2, CISD, CCSD, CCSD(T) nuclear gradients
- SF-X2C-1E analytical nuclear gradients
- SF-X2C-1E analytical nuclear hessian
- Analytical nuclear gradients and hessian for ECP integrals
- GIAO-ECP integrals for NMR shielding
- Interface to pyWannier90
- Restricted MP2 with k-point sampling
- RCCSD(T), UCCSD(T) and GCCSD(T) 1-particle and 2-particle density matrices
- RCCSD(T), UCCSD(T) analytical nuclear gradients
- CASCI/CASSCF analytical nuclear gradients
- CASCI analytical nuclear gradients for excited states
- Cartesian GTO (6d 10f) basis in PBC calculations
- Natural transition orbital analysis
- direct-RPA (no exchange, aka TDH)
- direct-TDA (TDA without exchange)
- Function to set OpenMP threads
* Improved
- Independent OpenMP threads in FCI solver
- Supported even number of grids in pbc calculations
- Performance of UCCSD lambda solver
- The function to get SCF initial guess from the chkfile of the molecule with
different geometry
- The mcscf natural orbitals in the state-average calculation
- Performance of ECP integrals
- Prescreening for PBC 3-center integrals
- Performance and memory efficiency of G0W0
- KMP2 memory efficiency
- Efficiency to evaluate the value of periodic AO on grids
- libxc parser to support the customized Range-separated XC functionals
PySCF 1.4.7 (2018-04-15)
------------------------
* Bugfix
- Outcore ao2mo transform when basis functions are cartesian Gaussians
- Fix errors in dmrg-nevpt interface, which overwrite nevpt configure files by
variational dmrg configure files.
- The order of elements of a list that are loaded by chkfile.load
PySCF 1.4.6 (2018-04-02)
------------------------
* Added
dip_moment method for ROHF class
PySCF 1.4.5 (2018-03-23)
------------------------
* Bugfix
- Numerical grids not converged in ECP integrals
- Python3 compatibility in shci module
PySCF 1.4.4 (2018-03-20)
------------------------
* Improved
- Non-Hermitian matrix diagonalization
- Symmetric grids in cubegen
- FCI initial guess when the system has Dooh or Doov symmetry
- Using stable sort when sorting orbital energies
- Attribute "e_tot" in the MP2 methods to access the total energy
* Bugfix
- meta-GGA density in dft.numint.eval_rho2
- intor parser in ao2mo module
- ecp parser if ecp data not found
- 1-electron system for UCCSD
- Python-3 compatibility for dmrgscf module
- Handling the errors which were raised in the background threads
- UHF/ROHF density matrices in nao localization method
PySCF 1.4.3 (2018-01-17)
------------------------
* Improved
- Assert convergence in geometry optimization
- Initial guess in SCF PES scanning
- Memory usage for generating Becke-grids in DFT
* Bugfix
- XC parser to support the scaled compound functional
- In the second order SCF algorithm, removing level_shift
- k-point RCCSD for non-canonical HF reference
- ECP integrals
PySCF 1.4.2 (2017-12-06)
------------------------
* Added
- Frank Jensen, Polarization consistent basis sets
* Improved
- Memory usage of pbc KHF calculation when HF exchange is computed with FFTDF
* Bugfix
- pyberny interface
- PBC GDF initialization for hybrid functional
- guess of wfn symmetry for given fci wfn
- Entropy of Gaussian smearing
PySCF 1.4.1 (2017-11-12)
------------------------
* Bugfix
- meta-GGA functional detection code in XC parser
- Orbital symmetry label in mcscf initial guess projection
- Eigenvalue ordering for Davidson eigen solver
- Madelung constant of non-orthogonal lattice
- Convergence of Madelung constant for huge number of k-points samples
- basis parser for pople-type basis
- RCCSD when running large number of virtual orbitals on small memory machine
PySCF 1.4 (2017-10-05)
----------------------
* Improved
- Kinetic energy cutoff estimation
- Density fitting default auxiliary basis
- Memory usage for FFTDF module
- libxc interface
* Bugfix
- KUHF dimension error in smearing function
- SCF results inconsistency in chkfile and SOSCF solver
- OMP stack overflow in GTO basis evaluator
- Default grids in DFT gen_grid function for system with ECP/PP
- mol.intor function to generate STG and YP integrals in 8-fold symmetry
- TDDFT analytical gradients
- DMRG-CI runtime scratch path
- PBC GDF integrals for auxiliary basis with g functions
- post-HF initialization function when mean-field object is DF-SOSCF method