{"id":174,"date":"2016-12-09T15:57:18","date_gmt":"2016-12-09T20:57:18","guid":{"rendered":"https:\/\/people.clas.ufl.edu\/deumens\/?page_id=174"},"modified":"2026-03-19T08:36:39","modified_gmt":"2026-03-19T12:36:39","slug":"qtip","status":"publish","type":"page","link":"https:\/\/people.clas.ufl.edu\/deumens\/research\/qtip\/","title":{"rendered":"QTIP"},"content":{"rendered":"\r\n<section class=\"fullwidth-text-block\">\r\n\t<div class=\"container px-0 pt-5\">\r\n\t\t<div class=\"row align-items-start\">\r\n\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\n<h2 class=\"wp-block-heading\">Lightweight, Multithreaded Library for Computation of Quantum Theoretical Integrals.<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Author: Erik Deumens.<\/h3>\n\n\n\n<p><span style=\"color: #ff0000\">QTIP<\/span> is experimental with incomplete functionality, and inconsistent interfaces under development. This version will not be made publicly available because we do not have the resources to support it. Keep checking this web page for announcements on progress. The goal is to make QTIP Open Source once it is viable and stable.<\/p>\n\n\n\n\n\n<p>However, if you are interested in becoming a developer, please contact me at deumens at qtp.ufl.edu, and we can talk about some collaboration.<\/p>\n\n\n\n\n\n<p><strong>Object oriented<\/strong><\/p>\n\n\n\n\n\n<p>The design specifies a set of integrals generation subroutines (IGS) and a set of linear algebra subroutines (LAS). The IGS create integral patches, the basic object in QTIP. The LAS allow traces, multiplications and other basic operations to be done with the patches and densities and other matrices. This operations are optimized for modern superscalar processors.<\/p>\n\n\n\n\n\n<p>Currently we have implementation of McMurchie-Davidson algorithm origianlly written by Trygve Helgaker and rewritten by me.<\/p>\n\n\n\n\n\n<p>It has support for complex integrals with electron translation factors written by Benny Mogensen.<\/p>\n\n\n\n\n\n<p>In 1999-2000, Denis Jacquemin implemented the PRISM method for Obara-Saika with good performance results.<\/p>\n\n\n\n\n\n<p><strong>Parallel computing<\/strong><\/p>\n\n\n\n\n\n<p>The object oriented approach allows for efficient parallel processing with equal ease on shared and on distributed memory computers. The standards of POSIX threads and MPI message passing are used.<\/p>\n\n\n\n\n\n<p><strong>Features under development for version 1<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>overlap, kinetic energy, nuclear attraction, electron-electron repulsion integrals<\/li>\n<li>multipole, angular momentum, spin-orbit coupling integrals<\/li>\n<li>effective core potential integrals<\/li>\n<li>r<sub>12<\/sub> integrals<\/li>\n<li>cartesian and spherical shells<\/li>\n<li>general and segmented contractions<\/li>\n<li>semi-empirical AM1 integrals<\/li><\/ul>\n\n\n\n<table border=\"0\" width=\"100%\" cellspacing=\"0\" bgcolor=\"#FFFFFF\">\n<tbody>\n<tr>\n<td width=\"80%\"><strong>List of developers<\/strong>\n<table>\n<tbody>\n<tr bgcolor=\"#FFCC99\">\n<td>Author<\/td>\n<td>Project<\/td>\n<\/tr>\n<tr>\n<td>Trygve Helgaker<\/td>\n<td>original 1986 code for gaussian integrals with McMurchie Davidson method<\/td>\n<\/tr>\n<tr>\n<td>Benny Mogensen<\/td>\n<td>Integrals for gaussians with electron translation factors (complex plane wave factors)<\/td>\n<\/tr>\n<tr>\n<td>Denis Jacquemin<\/td>\n<td>semi-empirical AM1 integrals and PRISM Obara-Saika integrals<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>Versions<\/strong><\/p><!--PARAGRAPH_SEPARATOR--><p><a name=\"v11\"><\/a><\/p>\n<table>\n<tbody>\n<tr bgcolor=\"#FFCC99\">\n<td width=\"8%\">Version<\/td>\n<td width=\"8%\">Release<\/td>\n<td width=\"8%\">Update<\/td>\n<td width=\"14%\">Date<\/td>\n<td width=\"60%\">Feature<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">1<\/td>\n<td width=\"8%\">A<\/td>\n<td width=\"8%\">2<\/td>\n<td width=\"14%\">Dec 30, 2000<\/td>\n<td width=\"60%\">Fortran 77<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">1<\/td>\n<td width=\"8%\">A<\/td>\n<td width=\"8%\">3<\/td>\n<td width=\"14%\">Dec 30, 2000<\/td>\n<td width=\"60%\">Fortran 90<\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">1<\/td>\n<td width=\"8%\">A<\/td>\n<td width=\"8%\">4<\/td>\n<td width=\"14%\">Mar 10, 2001<\/td>\n<td width=\"60%\">Used by <a href=\"http:\/\/users.clas.ufl.edu\/deumens\/endyne.html\">ENDyne 5 alpha 3<\/a><\/td>\n<\/tr>\n<tr>\n<td width=\"8%\">1<\/td>\n<td width=\"8%\">A<\/td>\n<td width=\"8%\">5<\/td>\n<td width=\"14%\">Aug 30, 2002?<\/td>\n<td width=\"60%\">defined as Python extension<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n\n\n\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/section>\r\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":685,"featured_media":0,"parent":22,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"featured_post":"","footnotes":"","_links_to":"","_links_to_target":""},"class_list":["post-174","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/people.clas.ufl.edu\/deumens\/wp-json\/wp\/v2\/pages\/174","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/people.clas.ufl.edu\/deumens\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/people.clas.ufl.edu\/deumens\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/people.clas.ufl.edu\/deumens\/wp-json\/wp\/v2\/users\/685"}],"replies":[{"embeddable":true,"href":"https:\/\/people.clas.ufl.edu\/deumens\/wp-json\/wp\/v2\/comments?post=174"}],"version-history":[{"count":5,"href":"https:\/\/people.clas.ufl.edu\/deumens\/wp-json\/wp\/v2\/pages\/174\/revisions"}],"predecessor-version":[{"id":436,"href":"https:\/\/people.clas.ufl.edu\/deumens\/wp-json\/wp\/v2\/pages\/174\/revisions\/436"}],"up":[{"embeddable":true,"href":"https:\/\/people.clas.ufl.edu\/deumens\/wp-json\/wp\/v2\/pages\/22"}],"wp:attachment":[{"href":"https:\/\/people.clas.ufl.edu\/deumens\/wp-json\/wp\/v2\/media?parent=174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}