-
Notifications
You must be signed in to change notification settings - Fork 4
TS-OPT: EF number of steps before hessian recalculcalation #7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
In the eigenvector-following method implemented in ReaDuct, the Hessian is calculated in every step, and this cannot (easily) be changed. If you're interested, the corresponding source code is here: The Hessian is calculated via the statement |
Thanks for the prompt reply. I had seen the EigenvectorFollowing.h
<https://github.com/qcscine/utilities/blob/master/src/Utils/Utils/Optimizer/HessianBased/EigenvectorFollowing.h#L49>file, but could not quite believe that the Hessian is really calculated in each step with no way to adapt it. That is very expensive for large systems.
Best regards
Peter
Am 07.01.2025 um 09:32 schrieb Thomas Weymuth:
In the eigenvector-following method implemented in ReaDuct, the Hessian is calculated in every step, and this cannot (easily) be changed. If you're interested, the corresponding source code is here:
https://github.com/qcscine/utilities/blob/master/src/Utils/Utils/Optimizer/HessianBased/EigenvectorFollowing.h#L49
The Hessian is calculated via the statement |function(parameters, value, gradients, *hessian, true)|, the boolean |true| signifies that the Hessian should be calculated.
—
Reply to this email directly, view it on GitHub <#7 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AFA5LGVAGKV6OMZ5EGLQMUL2JOGJ7AVCNFSM6AAAAABUW56N42VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNZUGY3TQMRYG4>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
--
Univ.-Prof. Dr. Peter Burger
Institut fuer Anorganische und Angewandte Chemie
Universitaet Hamburg
Martin-Luther-King-Platz 6
D-20146 Hamburg
Tel.:+49 040 42838 3662
***@***.***
http://www.chemie.uni-hamburg.de/ac/burger/index.html
…--------------c1JyX01mMiInuWzw7ScO5ooq
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: 8bit
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Thanks for the prompt reply. I had seen the <a
href="https://github.com/qcscine/utilities/blob/master/src/Utils/Utils/Optimizer/HessianBased/EigenvectorFollowing.h#L49">EigenvectorFollowing.h<br>
</a>file, but could not quite believe that the Hessian is really
calculated in each step with no way to adapt it. That is very
expensive for large systems.</p>
<p>Best regards</p>
<p>Peter<br>
</p>
<div class="moz-cite-prefix">Am 07.01.2025 um 09:32 schrieb Thomas
Weymuth:<br>
</div>
<blockquote type="cite"
***@***.***">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<p dir="auto">In the eigenvector-following method implemented in
ReaDuct, the Hessian is calculated in every step, and this
cannot (easily) be changed. If you're interested, the
corresponding source code is here:</p>
<p dir="auto"><a
href="https://github.com/qcscine/utilities/blob/master/src/Utils/Utils/Optimizer/HessianBased/EigenvectorFollowing.h#L49"
moz-do-not-send="true" class="moz-txt-link-freetext">https://github.com/qcscine/utilities/blob/master/src/Utils/Utils/Optimizer/HessianBased/EigenvectorFollowing.h#L49</a></p>
<p dir="auto">The Hessian is calculated via the statement <code
class="notranslate">function(parameters, value, gradients,
*hessian, true)</code>, the boolean <code class="notranslate">true</code>
signifies that the Hessian should be calculated.</p>
<p
style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br>
Reply to this email directly, <a
href="#7 (comment)"
moz-do-not-send="true">view it on GitHub</a>, or <a
href="https://github.com/notifications/unsubscribe-auth/AFA5LGVAGKV6OMZ5EGLQMUL2JOGJ7AVCNFSM6AAAAABUW56N42VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNZUGY3TQMRYG4"
moz-do-not-send="true">unsubscribe</a>.<br>
You are receiving this because you authored the thread.<img
src="https://github.com/notifications/beacon/AFA5LGRDO2OUSPMEG4IF5FT2JOGJ7A5CNFSM6AAAAABUW56N42WGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTUZOZ4Q6.gif"
height="1" width="1" alt="" moz-do-not-send="true"><span
style="color: transparent; font-size: 0; display: none; visibility: hidden; overflow: hidden; opacity: 0; width: 0; height: 0; max-width: 0; max-height: 0; mso-hide: all">Message
ID: <span><qcscine/readuct/issues/7/2574678287</span><span>@</span><span>github</span><span>.</span><span>com></span></span></p>
<script type="application/ld+json">[
{
***@***.***": "http://schema.org",
***@***.***": "EmailMessage",
"potentialAction": {
***@***.***": "ViewAction",
"target": "#7 (comment)",
"url": "#7 (comment)",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
***@***.***": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>
</blockquote>
<pre class="moz-signature" cols="0">--
Univ.-Prof. Dr. Peter Burger
Institut fuer Anorganische und Angewandte Chemie
Universitaet Hamburg
Martin-Luther-King-Platz 6
D-20146 Hamburg
Tel.:+49 040 42838 3662
email: <a class="moz-txt-link-abbreviated" ***@***.******@***.***</a>
<a class="moz-txt-link-freetext" href="http://www.chemie.uni-hamburg.de/ac/burger/index.html">http://www.chemie.uni-hamburg.de/ac/burger/index.html</a></pre>
</body>
</html>
--------------c1JyX01mMiInuWzw7ScO5ooq--
|
You're right, it's rather expensive. As an alternative, you could give the Bofill algorithm a try. This does not recalculate the Hessian in every step. |
In TS optimizations using the eigenvector-following method, the Hessian is recalculated after a certain number of optimization steps. Is this number a fixed parameter, or can it be specified in the input file? I could not find any mention of it in the manual. If it is indeed a fixed parameter, where in the source code can its value be found or adjusted?
Thx alot for providing the program.
The text was updated successfully, but these errors were encountered: