-
Notifications
You must be signed in to change notification settings - Fork 150
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
Implementation of a generic docking algorithm #677
Conversation
Signed-off-by: cplett <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please use implicit none and make all exports explicit. Also end each unit (subroutine, module, function) with the name of the respective unit.
src/iff/calculator.f90
Outdated
use xtb_docking_param | ||
use xtb_type_environment, only : TEnvironment | ||
use xtb_type_molecule, only : TMolecule | ||
use xtb_iff_iffini, only : init_iff!, precomp | ||
use xtb_iff_data, only : TIFFData |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Import only in module scope, use public
and private
to limit reexports
src/iff/calculator.f90
Outdated
|
||
type(TEnvironment), intent(inout) :: env | ||
|
||
type(TMolecule), intent(in) :: comb!Combined structure of molA and molB (molA has to be first) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
type(TMolecule), intent(in) :: comb!Combined structure of molA and molB (molA has to be first) | |
!> Combined structure of molA and molB (molA has to be first) | |
type(TMolecule), intent(in) :: comb |
src/iff/calculator.f90
Outdated
fnam='xtblmoinfA' | ||
call rd0(1,trim(fnam),calc%dat%n1,calc%dat%nlmo1) | ||
call rd(trim(fnam),1,calc%dat%n1,calc%dat%xyz1,calc%dat%at1& | ||
&,calc%dat%nlmo1,calc%dat%lmo1,calc%dat%rlmo1,calc%dat%q1,& | ||
& calc%dat%qct1) | ||
|
||
fnam='xtblmoinfB' | ||
call rd0(2,trim(fnam),calc%dat%n2,calc%dat%nlmo2) | ||
call rd(trim(fnam),2,calc%dat%n2,calc%dat%xyz2,calc%dat%at2,& | ||
& calc%dat%nlmo2,calc%dat%lmo2,calc%dat%rlmo2,calc%dat%q2,& | ||
& calc%dat%qct2) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we use readMolecule
provided by https://github.com/grimme-lab/xtb/blob/main/src/io/reader.f90
src/iff/iff_energy.f90
Outdated
end if | ||
|
||
|
||
end subroutine |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Always include the name of the subroutine in the end statement
src/iff/iff_energy.f90
Outdated
|
||
end subroutine | ||
|
||
end module |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add module name
use xtb_mctc_accuracy, only: wp | ||
use xtb_docking_param | ||
use xtb_iff_ifflmo | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Use implicit none and explicit exports
use xtb_splitparam | ||
use xtb_iff_calculator, only: TIFFCalculator | ||
implicit none | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
explicit exports
case('--nat') | ||
call args%nextArg(sec) | ||
if (allocated(sec)) then | ||
call set_natom(env,sec) | ||
end if |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is this command for?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is required for setting the number of atoms of the first molecule in the input structure of a xtb-IFF single point calculation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why a fixed range (1-n)? We have much more flexible input models for fragments available.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's a good point. I will change this.
Signed-off-by: cplett <[email protected]>
4114b5c
to
2995824
Compare
Signed-off-by: cplett <[email protected]>
-the docking submodule was implemented
-it can add two molecules based on an interaction site screening with the xtbIFF energy
-geometry optimizations with a GFN method follow automatically
-it is executed with "xtb dock [options]"
-the resulting energetically lowest structure is on file best.xyz, the best 15 structures on file final_structures.xyz
-the documentation will follow later