mirror of
https://github.com/arcan1s/moldyn.git
synced 2025-06-28 23:01:43 +00:00
Compare commits
35 Commits
Author | SHA1 | Date | |
---|---|---|---|
33ddc0079d | |||
2c44b229ee | |||
ae9957b621 | |||
703ab513c0 | |||
96b642c12a | |||
7f328e7746 | |||
f7e9ea8049 | |||
7ffb0de47d | |||
e1badd963f | |||
f27efd5325 | |||
3081f79a32 | |||
c35b81ded0 | |||
2a02a497e3 | |||
071affe7ad | |||
e146f059b2 | |||
34a2c5c090 | |||
b8e195de85 | |||
c738f58985 | |||
3a8bc96f82 | |||
3f5d240dcc | |||
fee68a79a3 | |||
f124bfbcdd | |||
26fc6b9e7e | |||
30630ca541 | |||
0714cb6541 | |||
d88f3b317f | |||
38eb392e32 | |||
b7b627fba5 | |||
8962a4b7ad | |||
e64c310693 | |||
7c874ca96d | |||
473d195ea9 | |||
6b0a2a47db | |||
d7f7a9c2b5 | |||
cd3857adc1 |
104
combine-qti/combine-qti.py
Executable file
104
combine-qti/combine-qti.py
Executable file
@ -0,0 +1,104 @@
|
||||
#!/usr/bin/python2
|
||||
# combine-qti
|
||||
# Copyright (C) 2014 Evgeniy Alekseev <esalexeev@gmail.com>
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
import argparse, os
|
||||
|
||||
|
||||
def readData(file):
|
||||
"""function to read data"""
|
||||
windows = 0
|
||||
data = []
|
||||
# preread
|
||||
with open (file, "r") as input:
|
||||
for line in input:
|
||||
if (line.split('\t')[0] == "<windows>"):
|
||||
windows = int(line.split('\t')[1].strip())
|
||||
with open (file, "r") as input:
|
||||
for window in range(windows):
|
||||
for line in input:
|
||||
if (line.strip() == "<table>"):
|
||||
data.append("<table>\n")
|
||||
break
|
||||
elif (line.strip() == "<multiLayer>"):
|
||||
data.append("<multiLayer>\n")
|
||||
break
|
||||
for line in input:
|
||||
if (line.strip() == '</table>'):
|
||||
data.append("</table>\n")
|
||||
break
|
||||
elif (line.strip() == '</multiLayer>'):
|
||||
data.append("</multiLayer>\n")
|
||||
break
|
||||
data.append(line)
|
||||
return windows, data
|
||||
|
||||
|
||||
def printHeader(file, windowsNum=1):
|
||||
"""function to print header"""
|
||||
iter = 0
|
||||
suffix = ""
|
||||
while (os.path.exists(file + suffix)):
|
||||
suffix = ".%i" % (iter)
|
||||
iter = iter + 1
|
||||
if (suffix != ""):
|
||||
os.rename(file, file + suffix)
|
||||
with open(file, "w") as output:
|
||||
output.write("QtiPlot 0.9.8 project file\n")
|
||||
output.write("<scripting-lang>\tPython\n")
|
||||
output.write("<windows>\t%i\n" % (windowsNum))
|
||||
|
||||
|
||||
def printData(file, data):
|
||||
"""function to print data"""
|
||||
with open(file, "a") as output:
|
||||
for line in data:
|
||||
output.write(line)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser(description = 'Combine several *.qti files into one')
|
||||
parser.add_argument('-d', '--directory', dest = 'dir',
|
||||
help = 'Directory with input files or use --input', action = 'store', default = False)
|
||||
parser.add_argument('-i', '--input', dest = 'input',
|
||||
help = 'Input files, comma separated', action = 'store', default = False)
|
||||
parser.add_argument('-o', '--output', dest = 'output',
|
||||
help = 'Output file', action = 'store', default = False)
|
||||
args = parser.parse_args()
|
||||
|
||||
input = []
|
||||
if (args.dir):
|
||||
if (os.path.isdir(args.dir)):
|
||||
input = [os.path.join(args.dir, file) for file in os.listdir(args.dir) if (os.path.splitext(file)[1] == ".qti")]
|
||||
else:
|
||||
if (args.input):
|
||||
for file in args.input.split(','):
|
||||
if (os.path.isfile(file)): input.append(file)
|
||||
output = args.output
|
||||
if (not input) or (not output):
|
||||
print ("Files are not set")
|
||||
exit()
|
||||
|
||||
totalWindows = 0
|
||||
totalData = []
|
||||
for file in input:
|
||||
windows, data = readData(file)
|
||||
totalWindows = totalWindows + windows
|
||||
totalData.append(data)
|
||||
printHeader(output, totalWindows)
|
||||
for data in totalData:
|
||||
printData(output, data)
|
109
dynamic-hb/dynamic-hb.py
Normal file
109
dynamic-hb/dynamic-hb.py
Normal file
@ -0,0 +1,109 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
import argparse
|
||||
import os
|
||||
|
||||
|
||||
def calculate(splited, system):
|
||||
"""function to calculate results"""
|
||||
matrix = []
|
||||
for i in range(system['mols']):
|
||||
matrix.append(0)
|
||||
for file in splited:
|
||||
for aggl in file:
|
||||
matrix[len(aggl)-1] += 1
|
||||
results = {}
|
||||
while matrix[-1] == 0:
|
||||
matrix.pop(-1)
|
||||
for i, item in enumerate(matrix, start = 1):
|
||||
results[i] = item
|
||||
summ = 0
|
||||
for i in results:
|
||||
if i == 1: continue
|
||||
results[i] = i * results[i] / (system['steps'] * system['mols'])
|
||||
summ += results[i]
|
||||
results[1] = 1.0 - summ
|
||||
return results
|
||||
|
||||
|
||||
def parse_file(splited):
|
||||
"""function to parse input file"""
|
||||
for file in splited:
|
||||
for agl in file:
|
||||
for i, molecule in enumerate(agl):
|
||||
agl[i] = [int(molecule.split('=')[0]), [int(conn) for conn in molecule.split('=')[1].split(',') if conn]]
|
||||
return splited
|
||||
|
||||
|
||||
def print_result(output, matrix):
|
||||
"""function to print result to file"""
|
||||
with open(output, 'w') as out:
|
||||
out.write("| n | p |\n-----------------\n")
|
||||
for i in matrix:
|
||||
out.write(" %7i %7.5f \n" % (i, matrix[i]))
|
||||
out.write("-----------------\n")
|
||||
|
||||
|
||||
def read_file(input_file):
|
||||
"""function to read file from statgen"""
|
||||
file = open(input_file).read()
|
||||
if not file.startswith("statgen"):
|
||||
print("It is not a statgen file")
|
||||
exit(2)
|
||||
prepare = file.split("\n")
|
||||
system = {'steps': 0, 'mols': 0}
|
||||
while not prepare[-1].startswith("SUMMARY STATISTIC"):
|
||||
statistic = prepare.pop(-1)
|
||||
if not statistic.startswith(" 1"): continue
|
||||
values = [float(item) for item in statistic.split()]
|
||||
system['steps'] = int(round(values[1] / values[2], 0))
|
||||
system['mols'] = int(round(values[2] / values[3], 0))
|
||||
prepare.pop(-1)
|
||||
splited = '\n'.join(prepare).split("FILE")[1:]
|
||||
for i, item in enumerate(splited):
|
||||
text = item.split("AGL")[1:]
|
||||
for j, agl in enumerate(text):
|
||||
text[j] = [single for single in agl.split("\n")[1:] if single]
|
||||
text[-1].pop(-1)
|
||||
splited[i] = text
|
||||
return splited, system
|
||||
|
||||
|
||||
def select_aggl(splited, step):
|
||||
"""function to select agglomerates"""
|
||||
for i, file in enumerate(splited):
|
||||
first = (i - step) if (i - step) > 0 else 0
|
||||
last = (i + step) if (i + step) < (len(splited) - 1) else (len(splited) - 1)
|
||||
for j, aggl in enumerate(file):
|
||||
for k, mol in enumerate(aggl):
|
||||
table = []
|
||||
for other_file in splited[first:last]:
|
||||
for aggl_other in other_file:
|
||||
if not mol[0] in [other_single[0] for other_single in aggl_other]: continue
|
||||
table.extend(mols for other_single in aggl_other for mols in other_single[1] if other_single[0] == mol[0])
|
||||
for l, conn in enumerate(mol[1]):
|
||||
if table.count(conn) == last - first: continue
|
||||
splited[i][j][k][1].pop(l)
|
||||
if len(mol[1]) == 0:
|
||||
splited[i][j].pop(k)
|
||||
if len(aggl) == 0:
|
||||
splited[i].pop(j)
|
||||
return splited
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser(description = "Sort agglomerates using dynamic criteria")
|
||||
parser.add_argument('input', help = "file from statgen")
|
||||
parser.add_argument('-s', '--step', type = int, help = "step to check agglomerates",
|
||||
default = 1)
|
||||
parser.add_argument('-o', '--output', help = "output file", default = "dhb-output.dat")
|
||||
args = parser.parse_args()
|
||||
|
||||
|
||||
if not os.path.isfile(args.input):
|
||||
print("Could not find file %s" % args.input)
|
||||
exit(1)
|
||||
splited, system = read_file(args.input)
|
||||
splited = parse_file(splited)
|
||||
matrix = calculate(select_aggl(splited, args.step), system)
|
||||
print_result(args.output, matrix)
|
70
get_dipole/get-dipole.py
Executable file
70
get_dipole/get-dipole.py
Executable file
@ -0,0 +1,70 @@
|
||||
#!/usr/bin/python2
|
||||
|
||||
import argparse, math
|
||||
|
||||
|
||||
def get_aver_dipole(dipole):
|
||||
"""function to get average dipole moment"""
|
||||
aver_dipole = math.sqrt((dipole[0] * dipole[0] +
|
||||
dipole[1] * dipole[1] +
|
||||
dipole[2] * dipole[2]))
|
||||
aver_dipole = round(aver_dipole, 4)
|
||||
return aver_dipole
|
||||
|
||||
|
||||
def get_charges(file_name):
|
||||
"""function to get charges from GROMACS files"""
|
||||
charges = {}
|
||||
with open(file_name, 'r') as input_file:
|
||||
for line in input_file:
|
||||
try:
|
||||
charges[line.split()[0]] = float(line.split()[2])
|
||||
except:
|
||||
pass
|
||||
return charges
|
||||
|
||||
|
||||
def get_coordinates(file_name):
|
||||
"""function to get coordinates from PDB"""
|
||||
coords = []
|
||||
with open(file_name, 'r') as input_file:
|
||||
for line in input_file:
|
||||
if ((line[0:4] == "ATOM") or (line[0:6] == "HETATM")):
|
||||
coords.append({"type":line.split()[2], "coords":[float(line[30:38]), float(line[38:46]), float(line[46:54])]})
|
||||
return coords
|
||||
|
||||
|
||||
def get_dipole(charges, coords):
|
||||
"""function to get dipole moment"""
|
||||
dipole = [0.0, 0.0, 0.0]
|
||||
for atom in coords:
|
||||
dipole[0] = dipole[0] + charges[atom["type"]] * atom["coords"][0]
|
||||
dipole[1] = dipole[1] + charges[atom["type"]] * atom["coords"][1]
|
||||
dipole[2] = dipole[2] + charges[atom["type"]] * atom["coords"][2]
|
||||
dipole[0] = math.fabs(round(16.0218 * dipole[0] / 3.3356, 4))
|
||||
dipole[1] = math.fabs(round(16.0218 * dipole[1] / 3.3356, 4))
|
||||
dipole[2] = math.fabs(round(16.0218 * dipole[2] / 3.3356, 4))
|
||||
return dipole
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser(description = 'Calculate dipole moment from PDB')
|
||||
parser.add_argument('-i', '--input', dest = 'input',
|
||||
help = 'File with charges', action = 'store')
|
||||
parser.add_argument('-c', '--coord', dest = 'coord',
|
||||
help = 'File with coordinates', action = 'store')
|
||||
parser.add_argument('-v', '--vector', dest = 'vector',
|
||||
help = 'Return vector', action = 'store_true', default = False)
|
||||
args = parser.parse_args()
|
||||
|
||||
if ((not args.input) or (not args.coord)):
|
||||
print "Input files are not set"
|
||||
exit()
|
||||
|
||||
charges = get_charges(args.input)
|
||||
coords = get_coordinates(args.coord)
|
||||
if (args.vector):
|
||||
print get_dipole(charges, coords)
|
||||
else:
|
||||
print get_aver_dipole(get_dipole(charges, coords))
|
||||
|
70
hb-select/hb-select.py
Executable file
70
hb-select/hb-select.py
Executable file
@ -0,0 +1,70 @@
|
||||
#!/usr/bin/python2
|
||||
|
||||
import argparse
|
||||
|
||||
def readAtoms(file):
|
||||
"""function to read *gro file"""
|
||||
atoms = {}
|
||||
with open(file, 'r') as coordFile:
|
||||
coordFile.readline()
|
||||
num = int(coordFile.readline())
|
||||
for i in range(num):
|
||||
line = coordFile.readline()
|
||||
resNum = int(line[0:5])
|
||||
atomNum = int(line[15:20])
|
||||
atoms[atomNum] = resNum
|
||||
return atoms
|
||||
|
||||
|
||||
def readHb(files):
|
||||
"""function to read *.ndx file"""
|
||||
hbs = []
|
||||
start = False
|
||||
for file in files:
|
||||
with open(file, 'r') as ndxFile:
|
||||
for line in ndxFile:
|
||||
if (line[0:9] == "[ hbonds_"):
|
||||
start = True
|
||||
continue
|
||||
elif (line.count('[') > 0):
|
||||
start = False
|
||||
continue
|
||||
elif (start):
|
||||
donor = int(line[0:7])
|
||||
hydrogen = int(line[7:14])
|
||||
acceptor = int(line[14:21])
|
||||
if (hbs.count([donor, hydrogen, acceptor]) == 0):
|
||||
hbs.append([donor, hydrogen, acceptor])
|
||||
return hbs
|
||||
|
||||
|
||||
def selectHb(atoms, hbs):
|
||||
"""funtion to select hydrogen bond"""
|
||||
selectedHbs = []
|
||||
for hb in hbs:
|
||||
if ((atoms[hb[0]] - atoms[hb[2]]) > 5):
|
||||
selectedHbs.append(hb)
|
||||
return selectedHbs
|
||||
|
||||
|
||||
def printToFile(selectedHbs, file):
|
||||
"""function to print results"""
|
||||
with open(file, 'w') as ndxFile:
|
||||
ndxFile.write("[ sel_hbs ]\n")
|
||||
for hb in selectedHbs:
|
||||
ndxFile.write("%7i%7i%7i\n" % (hb[0], hb[1], hb[2]))
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser(description = 'Select hidrogen bond from GROMACS index file')
|
||||
parser.add_argument('-i', '--input', dest = 'input',
|
||||
help = '*.gro file', action = 'store')
|
||||
parser.add_argument('-n', '--ndx', dest = 'ndx',
|
||||
help = '*.ndx files, comma separated', action = 'store')
|
||||
parser.add_argument('-o', '--output', dest = 'output',
|
||||
help = 'output *.ndx file', action = 'store')
|
||||
args = parser.parse_args()
|
||||
|
||||
atoms = readAtoms(args.input)
|
||||
hbs = readHb(args.ndx.split(','))
|
||||
selectedHbs = selectHb(atoms, hbs)
|
||||
printToFile(selectedHbs, args.output)
|
18
mathmech/CHANGELOG
Normal file
18
mathmech/CHANGELOG
Normal file
@ -0,0 +1,18 @@
|
||||
V.1.2.0 ()
|
||||
* change license from GPL to Beerware
|
||||
* changes in the architecture
|
||||
+ added library
|
||||
|
||||
V.1.1.1 (2013-09-03)
|
||||
* optimization
|
||||
|
||||
V.1.1.0 (2013-09-02)
|
||||
+ added help window
|
||||
+ added help docs
|
||||
- small bug fixes
|
||||
|
||||
V.1.0.3 (2013-08-30)
|
||||
* bug fixes
|
||||
|
||||
V.1.0.1 (2013-07-27)
|
||||
+ initial release
|
@ -1,31 +1,70 @@
|
||||
set ("PROJECT_VERSION_MAJOR" 1)
|
||||
set ("PROJECT_VERSION_MINOR" 0)
|
||||
set ("PROJECT_VERSION_PATCH" 3)
|
||||
set ("PROJECT_VERSION" ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH})
|
||||
cmake_minimum_required (VERSION 2.8)
|
||||
|
||||
cmake_policy (SET CMP0003 OLD)
|
||||
cmake_policy (SET CMP0002 OLD)
|
||||
cmake_policy (SET CMP0011 NEW)
|
||||
cmake_policy (SET CMP0015 NEW)
|
||||
|
||||
project (mathmech)
|
||||
set (PROJECT_VERSION_MAJOR 1)
|
||||
set (PROJECT_VERSION_MINOR 2)
|
||||
set (PROJECT_VERSION_PATCH 0)
|
||||
set (PROJECT_VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH})
|
||||
configure_file (${CMAKE_SOURCE_DIR}/version.h.in ${CMAKE_CURRENT_BINARY_DIR}/version.h)
|
||||
|
||||
message (STATUS "Version ${PROJECT_VERSION}")
|
||||
|
||||
set (COMPS mathmech
|
||||
mm_agl
|
||||
mm_envir
|
||||
mm_radf
|
||||
mm_statgen
|
||||
mm_trj
|
||||
mm_trj2pdb)
|
||||
agl
|
||||
envir
|
||||
radf
|
||||
statgen
|
||||
trj
|
||||
trj2pdb)
|
||||
|
||||
# install options
|
||||
set (MM_PREFIX "mm_" CACHE STRING "Prefix for mathmech tools")
|
||||
OPTION (WITH_DEBUG_MODE "Build with debug mode" OFF)
|
||||
OPTION (ADD_INCLUDE "Add include files" OFF)
|
||||
OPTION (ADD_DOCS "Add documentation" OFF)
|
||||
option (WITH_DEBUG_MODE "Build with debug mode" OFF)
|
||||
option (ADD_DOCS "Add documentation" OFF)
|
||||
option (ADD_INCLUDE "Add include files" OFF)
|
||||
if (CMAKE_SYSTEM_NAME MATCHES Linux)
|
||||
set (QWT_INCLUDE_PATH "/usr/include" CACHE STRING "Path to qwt include")
|
||||
set (QWT_LIBRARY_PATH "/usr/lib" CACHE STRING "Path to qwt library")
|
||||
elseif (CMAKE_SYSTEM_NAME MATCHES Windows)
|
||||
set (QWT_INCLUDE_PATH "C:/Qwt-6.1.0/include" CACHE STRING "Path to qwt include")
|
||||
set (QWT_LIBRARY_PATH "C:/Qwt-6.1.0/lib" CACHE STRING "Path to qwt library")
|
||||
endif()
|
||||
endif ()
|
||||
|
||||
# verbose
|
||||
set (CMAKE_VERBOSE_MAKEFILE ON)
|
||||
|
||||
# flags
|
||||
if ( WITH_DEBUG_MODE )
|
||||
add_definitions ( -DDEBUG_MODE=1 )
|
||||
endif ()
|
||||
if ( CMAKE_COMPILER_IS_GNUCXX )
|
||||
set (ADD_CXX_FLAGS "-Wall")
|
||||
set (CMAKE_CXX_FLAGS "-O0 ${ADD_CXX_FLAGS}")
|
||||
set (CMAKE_CXX_FLAGS_DEBUG "-g -O0")
|
||||
set (CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
|
||||
elseif ( MSVC )
|
||||
set (ADD_CXX_FLAGS "/W4")
|
||||
set (CMAKE_CXX_FLAGS "${ADD_CXX_FLAGS}")
|
||||
else ()
|
||||
message ("Unknown compiler")
|
||||
endif ()
|
||||
|
||||
# set libraries
|
||||
set (LIBRARIES mm)
|
||||
foreach (LIBRARY ${LIBRARIES})
|
||||
add_subdirectory (${LIBRARY})
|
||||
endforeach ()
|
||||
|
||||
foreach (COMP ${COMPS})
|
||||
add_subdirectory (${COMP})
|
||||
endforeach()
|
||||
endforeach ()
|
||||
|
||||
# set docs file
|
||||
if (ADD_DOCS)
|
||||
include (docs.cmake)
|
||||
endif ()
|
||||
|
345
mathmech/COPYING
345
mathmech/COPYING
@ -1,341 +1,4 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Library General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) 19yy <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) 19yy name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Library General
|
||||
Public License instead of this License.
|
||||
"THE BEER-WARE LICENSE" (Revision 42):
|
||||
Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
can do whatever you want with this stuff. If we meet some day, and you think
|
||||
this stuff is worth it, you can buy me a beer in return.
|
||||
|
@ -1,36 +1,39 @@
|
||||
# Author: Evgeniy "arcanis" Alexeev <esalexeev@gmail.com>
|
||||
# Maintainer: Evgeniy "arcanis" Alexeev <esalexeev@gmail.com>
|
||||
# Author: Evgeniy "arcanis" Alexeev <arcanis.arch at gmail dot com>
|
||||
# Maintainer: Evgeniy "arcanis" Alexeev <arcanis.arch at gmail dot com>
|
||||
|
||||
pkgname=mathmech
|
||||
pkgver=1.0.3
|
||||
pkgrel=1
|
||||
pkgver=1.2.0
|
||||
pkgrel=2
|
||||
pkgdesc="Software package for analysis of molecular dynamics trajectories"
|
||||
arch=(any)
|
||||
url="https://github.com/arcan1s/moldyn/mathmech"
|
||||
license=('GPL')
|
||||
depends=('qt4' 'qwt')
|
||||
makedepends=('unzip' 'cmake' 'automoc4')
|
||||
arch=('i686' 'x86_64')
|
||||
url="http://arcan1s.github.io/projects/moldyn"
|
||||
license=('Beerware')
|
||||
depends=('qwt')
|
||||
makedepends=('cmake' 'automoc4')
|
||||
source=(https://github.com/arcan1s/moldyn/releases/download/mm-${pkgver}/${pkgname}-${pkgver}-src.zip)
|
||||
md5sums=('4eccb72efd4a8a531d7fda1aabc04f62')
|
||||
md5sums=('de893eee2230269b10099c5fd925502b')
|
||||
_cmakekeys="-DCMAKE_INSTALL_PREFIX=/usr
|
||||
-DQWT_INCLUDE_PATH=/usr/include/qwt
|
||||
-DQWT_LIBRARY_PATH=/usr/lib
|
||||
-DMM_PREFIX=mm_
|
||||
-DADD_DOCS:BOOL=0
|
||||
-DADD_INCLUDE:BOOL=0
|
||||
-DCMAKE_BUILD_TYPE=Release"
|
||||
|
||||
build ()
|
||||
{
|
||||
unzip -o -q ${srcdir}/${pkgname}-${pkgver}-src.zip -d ${srcdir}/${pkgname}
|
||||
if [ -d ${srcdir}/${pkgname}/build ]; then
|
||||
rm -rf ${srcdir}/${pkgname}/build
|
||||
fi
|
||||
mkdir ${srcdir}/${pkgname}/build && cd ${srcdir}/${pkgname}/build
|
||||
prepare() {
|
||||
[[ -d ${srcdir}/build ]] && rm -rf "${srcdir}/build"
|
||||
mkdir "${srcdir}/build"
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "${srcdir}/build"
|
||||
cmake ${_cmakekeys} ../
|
||||
make
|
||||
}
|
||||
|
||||
package()
|
||||
{
|
||||
cd ${srcdir}/${pkgname}/build
|
||||
make DESTDIR=${pkgdir} install
|
||||
package() {
|
||||
cd "${srcdir}/build"
|
||||
make DESTDIR="${pkgdir}" install
|
||||
install -Dm644 "${srcdir}/COPYING" "${pkgdir}/usr/share/licenses/${pkgname}/COPYING"
|
||||
}
|
||||
|
||||
|
40
mathmech/PKGBUILD-mingw
Normal file
40
mathmech/PKGBUILD-mingw
Normal file
@ -0,0 +1,40 @@
|
||||
# Author: Evgeniy "arcanis" Alexeev <arcanis.arch at gmail dot com>
|
||||
# Maintainer: Evgeniy "arcanis" Alexeev <arcanis.arch at gmail dot com>
|
||||
|
||||
pkgname=mathmech
|
||||
pkgver=1.2.0
|
||||
pkgrel=2
|
||||
pkgdesc="Software package for analysis of molecular dynamics trajectories"
|
||||
arch=('any')
|
||||
url="http://arcan1s.github.io/projects/moldyn"
|
||||
license=('Beerware')
|
||||
depends=('mingw-w64-qwt')
|
||||
makedepends=('mingw-w64-cmake' 'automoc4')
|
||||
source=(https://github.com/arcan1s/moldyn/releases/download/mm-${pkgver}/${pkgname}-${pkgver}-src.zip)
|
||||
md5sums=('46d8e1a3d6bc30d5b0b57ccf485986b1')
|
||||
_cmakekeys="-DCMAKE_INSTALL_PREFIX=/usr
|
||||
-DQWT_INCLUDE_PATH=/usr/x86_64-w64-mingw32/qwt
|
||||
-DQWT_LIBRARY_PATH=/usr/x86_64-w64-mingw32/lib
|
||||
-DMM_PREFIX=mm_
|
||||
-DADD_DOCS:BOOL=1
|
||||
-DADD_INCLUDE:BOOL=1
|
||||
-DCMAKE_BUILD_TYPE=Release"
|
||||
|
||||
prepare() {
|
||||
[[ -d ${srcdir}/build ]] && rm -rf "${srcdir}/build"
|
||||
mkdir "${srcdir}/build"
|
||||
}
|
||||
|
||||
build() {
|
||||
unset LDFLAGS
|
||||
cd "${srcdir}/build"
|
||||
x86_64-w64-mingw32-cmake ${_cmakekeys} ../
|
||||
make
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "${srcdir}/build"
|
||||
make DESTDIR="${pkgdir}" install
|
||||
install -Dm644 "${srcdir}/COPYING" "${pkgdir}/usr/share/licenses/${pkgname}/COPYING"
|
||||
}
|
||||
|
21
mathmech/agl/CMakeLists.txt
Normal file
21
mathmech/agl/CMakeLists.txt
Normal file
@ -0,0 +1,21 @@
|
||||
# set project name
|
||||
set (SUBPROJECT agl)
|
||||
# set additional cmake file
|
||||
include (${SUBPROJECT}.cmake)
|
||||
|
||||
# set libraries
|
||||
set (LIBRARIES mm)
|
||||
foreach (LIBRARY ${LIBRARIES})
|
||||
include_directories (${CMAKE_CURRENT_SOURCE_DIR}/../${LIBRARY}/include/)
|
||||
if (CMAKE_COMPILER_IS_GNUCXX)
|
||||
link_directories (${LIBRARY}/src/lib)
|
||||
elseif (CMAKE_COMPILER_IS_MSVC)
|
||||
link_directories (${LIBRARY}/src/Release)
|
||||
endif ()
|
||||
endforeach ()
|
||||
|
||||
# additional targets
|
||||
set (TARGETS "")
|
||||
set (HEADERS "")
|
||||
|
||||
add_subdirectory (${SUBPROJECT_SOURCE_DIR})
|
@ -1,9 +1,7 @@
|
||||
mm_agl - program that creates PDB file with chosen agglomerate
|
||||
Version: 1.0.3
|
||||
License: GPL
|
||||
agl - program that creates PDB file with chosen agglomerate
|
||||
|
||||
Usage:
|
||||
mm_agl -a FILENAME -i FILENAME -c X,Y,Z -o FILEMANE [ -l LOGFILE ] [ -q ] [ -h ]
|
||||
agl -a FILENAME -i FILENAME -c X,Y,Z -o FILEMANE [ -l LOGFILE ] [ -q ] [ -h ]
|
||||
|
||||
Parametrs:
|
||||
-a - input file with agglomerates (in format statgen)
|
10
mathmech/agl/agl.cmake
Normal file
10
mathmech/agl/agl.cmake
Normal file
@ -0,0 +1,10 @@
|
||||
# set directories
|
||||
set (SUBPROJECT_BINARY_DIR bin)
|
||||
set (SUBPROJECT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||
|
||||
# include_path
|
||||
include_directories (${SUBPROJECT_SOURCE_DIR}
|
||||
${CMAKE_CURRENT_BINARY_DIR}/../)
|
||||
|
||||
# executable path
|
||||
set (EXECUTABLE_OUTPUT_PATH ${SUBPROJECT_BINARY_DIR})
|
23
mathmech/agl/src/CMakeLists.txt
Normal file
23
mathmech/agl/src/CMakeLists.txt
Normal file
@ -0,0 +1,23 @@
|
||||
# set files
|
||||
file (GLOB SOURCES *.c)
|
||||
file (GLOB HEADERS *.h)
|
||||
|
||||
# set library
|
||||
if (CMAKE_COMPILER_IS_GNUCXX)
|
||||
set (ADDITIONAL_LIB m)
|
||||
else ()
|
||||
set (ADDITIONAL_LIB)
|
||||
endif ()
|
||||
|
||||
# message
|
||||
message (STATUS "${SUBPROJECT} SOURCES: ${SOURCES}")
|
||||
message (STATUS "${SUBPROJECT} HEADERS: ${HEADERS}")
|
||||
|
||||
# link libraries and compile
|
||||
add_executable (${SUBPROJECT} ${SOURCES} ${HEADERS})
|
||||
set_target_properties (${SUBPROJECT} PROPERTIES OUTPUT_NAME ${MM_PREFIX}${SUBPROJECT})
|
||||
add_dependencies (${SUBPROJECT} ${LIBRARIES})
|
||||
target_link_libraries (${SUBPROJECT} ${ADDITIONAL_LIB} ${LIBRARIES})
|
||||
|
||||
# install properties
|
||||
install (TARGETS ${SUBPROJECT} DESTINATION bin)
|
73
mathmech/agl/src/add_main.c
Normal file
73
mathmech/agl/src/add_main.c
Normal file
@ -0,0 +1,73 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file add_main.c
|
||||
* Source code of agl
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "add_main.h"
|
||||
#include <mathmech/messages.h>
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
* @fn error_checking
|
||||
*/
|
||||
int error_checking (const char *aglinp, const system_info _system_info, const char *input,
|
||||
const char *output)
|
||||
{
|
||||
if (input[0] == '#')
|
||||
return 12;
|
||||
if (output[0] == '#')
|
||||
return 13;
|
||||
if (aglinp[0] == '#')
|
||||
return 14;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @fn print_message
|
||||
*/
|
||||
int print_message (const int quiet, FILE *std_output, const int log, FILE *f_log,
|
||||
const int mode, const char *str)
|
||||
{
|
||||
if ((quiet != 1) && (std_output != stderr))
|
||||
message (0, mode, str, std_output);
|
||||
if (log == 1)
|
||||
message (1, mode, str, f_log);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @fn set_defaults
|
||||
*/
|
||||
int set_defaults (char *aglinp, system_info *_system_info, char *input, int *log,
|
||||
char *output, int *quiet)
|
||||
{
|
||||
int i;
|
||||
|
||||
aglinp[0] = '#';
|
||||
for (i=0; i<3; i++)
|
||||
(*_system_info).cell[i] = 0.0;
|
||||
input[0] = '#';
|
||||
*log = 0;
|
||||
output[0] = '#';
|
||||
*quiet = 0;
|
||||
|
||||
return 0;
|
||||
}
|
@ -1,25 +1,36 @@
|
||||
/**
|
||||
* @file
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file add_main.h
|
||||
* Header of agl
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef ADD_MAIN_H
|
||||
#define ADD_MAIN_H
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "messages.h"
|
||||
#include <mathmech/messages.h>
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
* @fn error_checking
|
||||
*/
|
||||
int error_checking (const char *aglinp, const float *cell, const char *input,
|
||||
const char *output)
|
||||
/**
|
||||
* @brief function that checks errors in input variables
|
||||
* @code
|
||||
* error_checking (aglinp, cell, input, output);
|
||||
* error_checking (aglinp, _system_info, input, output);
|
||||
* @endcode
|
||||
*
|
||||
* @param aglinp agglomerate file name
|
||||
* @param cell massive of cell size
|
||||
* @param _system_info system information structure
|
||||
* @param input input file name
|
||||
* @param output output file name
|
||||
*
|
||||
@ -29,25 +40,10 @@ int error_checking (const char *aglinp, const float *cell, const char *input,
|
||||
* @return 14 - error in 'aglinp'
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
{
|
||||
if ((cell[0] == 0.0) || (cell[1] == 0.0) || (cell[2] == 0.0))
|
||||
return 11;
|
||||
if (input[0] == '#')
|
||||
return 12;
|
||||
if (output[0] == '#')
|
||||
return 13;
|
||||
if (aglinp[0] == '#')
|
||||
return 14;
|
||||
|
||||
return 0;
|
||||
}
|
||||
int error_checking (const char *aglinp, const system_info _system_info,
|
||||
const char *input, const char *output);
|
||||
|
||||
|
||||
/**
|
||||
* @fn print_message
|
||||
*/
|
||||
int print_message (const int quiet, FILE *std_output, const int log, FILE *f_log,
|
||||
const int mode, const char *str)
|
||||
/**
|
||||
* @brief function that prints message in log and stdout
|
||||
* @code
|
||||
@ -63,28 +59,18 @@ int print_message (const int quiet, FILE *std_output, const int log, FILE *f_log
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
{
|
||||
if ((quiet != 1) && (std_output != stderr))
|
||||
message (0, mode, str, std_output);
|
||||
if (log == 1)
|
||||
message (1, mode, str, f_log);
|
||||
|
||||
return 0;
|
||||
}
|
||||
int print_message (const int quiet, FILE *std_output, const int log, FILE *f_log,
|
||||
const int mode, const char *str);
|
||||
|
||||
|
||||
/**
|
||||
* @fn set_defaults
|
||||
*/
|
||||
int set_defaults (char *aglinp, float *cell, char *input, int *log, char *output, int *quiet)
|
||||
/**
|
||||
* @brief function that sets default values of variables
|
||||
* @code
|
||||
* set_defaults (aglinp, cell, input, &log, output, &quiet);
|
||||
* set_defaults (aglinp, &_system_info, input, &log, output, &quiet);
|
||||
* @endcode
|
||||
*
|
||||
* @param aglinp agglomerate file name
|
||||
* @param cell massive of cell size
|
||||
* @param _system_info system information structure
|
||||
* @param input mask of trajectory files
|
||||
* @param log status of log-mode
|
||||
* @param output output file name
|
||||
@ -92,16 +78,8 @@ int set_defaults (char *aglinp, float *cell, char *input, int *log, char *output
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
{
|
||||
int i;
|
||||
|
||||
aglinp[0] = '#';
|
||||
for (i=0; i<3; i++)
|
||||
cell[i] = 0.0;
|
||||
input[0] = '#';
|
||||
*log = 0;
|
||||
output[0] = '#';
|
||||
*quiet = 0;
|
||||
|
||||
return 0;
|
||||
}
|
||||
int set_defaults (char *aglinp, system_info *_system_info, char *input, int *log, char *output,
|
||||
int *quiet);
|
||||
|
||||
|
||||
#endif /* ADD_MAIN_H */
|
@ -1,75 +1,18 @@
|
||||
/**
|
||||
* @file
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @mainpage mm_agl
|
||||
* @image latex ./logo.png
|
||||
*
|
||||
* @section intro_sec Introduction
|
||||
*
|
||||
* <b>About this program</b>:
|
||||
* <ul>
|
||||
* <li>Program that creates PDB file with chosen agglomerate
|
||||
* </ul>
|
||||
*
|
||||
* <b>Developer</b>:
|
||||
* <ul>
|
||||
* <li>Evgeniy Alekseev aka arcanis <pre><esalexeev (at) gmail (dot) com></pre>
|
||||
*</ul>
|
||||
* <b>License</b>:
|
||||
* <ul>
|
||||
* <li>GPL
|
||||
* </ul>
|
||||
*
|
||||
* @section How-To-Use How to use
|
||||
* Usage:
|
||||
* <pre>
|
||||
* mm_agl -a AGL_INP -i INPUT -c X,Y,Z -o OUTPUT [ -l LOGFILE ] [ -q ] [ -h ]
|
||||
*
|
||||
* Parametrs:
|
||||
* -a - input file with agglomerates (in format statgen)
|
||||
* -i - input file with coordinates
|
||||
* -c - cell size (float), A
|
||||
* -o - output file name
|
||||
* -l - log enable
|
||||
* -q - quiet enable
|
||||
* -h - show this help and exit
|
||||
* </pre>
|
||||
*
|
||||
* @page Install
|
||||
*
|
||||
* @section Requirements Requirements
|
||||
* The application mm_agl requires the following external stuff:
|
||||
* - cmake >= 2.8
|
||||
* - gcc >= 4.8
|
||||
*
|
||||
* @section How-To How to install
|
||||
*
|
||||
* @subsection Linux Linux
|
||||
* @code
|
||||
* mkdir build && cd build
|
||||
* cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release ../
|
||||
* make
|
||||
* make install
|
||||
* @endcode
|
||||
*
|
||||
* @subsection Windows Windows
|
||||
* @code
|
||||
* create project file using 'cmake'
|
||||
* compile project
|
||||
* @endcode
|
||||
* You may also download compiled executable file for Win_x86.
|
||||
*
|
||||
* @page Changelog
|
||||
* V.1.0.3 (2013-08-30)
|
||||
* <ul>
|
||||
* <li> Bug fixes
|
||||
* </ul>
|
||||
* V.1.0.1 (2013-07-27)
|
||||
* <ul>
|
||||
* <li> initial release
|
||||
* </ul>
|
||||
*/
|
||||
* @file main.c
|
||||
* Source code of agl
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
@ -77,12 +20,14 @@
|
||||
#include <string.h>
|
||||
|
||||
#include "add_main.h"
|
||||
#include "coords.h"
|
||||
#include "messages.h"
|
||||
#include "print_struct.h"
|
||||
#include "read_agl.h"
|
||||
#include "select_mol.h"
|
||||
#include "set_center.h"
|
||||
#include <version.h>
|
||||
#include <mathmech/coords.h>
|
||||
#include <mathmech/messages.h>
|
||||
#include <mathmech/print_struct.h>
|
||||
#include <mathmech/read_agl.h>
|
||||
#include <mathmech/select_mol.h>
|
||||
#include <mathmech/set_center.h>
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
@ -98,35 +43,33 @@ int main(int argc, char *argv[])
|
||||
*/
|
||||
{
|
||||
char tmp_str[2048];
|
||||
int error, i, *tmp_int;
|
||||
int error, i;
|
||||
FILE *f_inp, *f_log;
|
||||
|
||||
char aglinp[256], *ch_type_atoms, input[256], logfile[256], output[256];
|
||||
float cell[3], *centr_coords, *coords;
|
||||
int *label_mol, log, num_atoms, num_mol, num_needed_mol, *needed_mol, quiet,
|
||||
*true_label_mol;
|
||||
char aglinp[256], input[256], logfile[256], output[256];
|
||||
float *centr_coords;
|
||||
int log, num_needed_mol, *needed_mol, quiet, *true_label_mol;
|
||||
atom_info *_atom_info;
|
||||
system_info _system_info;
|
||||
|
||||
/* aglinp agglomerate file name
|
||||
* ch_type_atoms massive of char atom types
|
||||
* input input file name
|
||||
* logfile log file name
|
||||
* output output file name
|
||||
*
|
||||
* cell massive of cell size
|
||||
* centr_coords massive of centered coordinates
|
||||
* coords massive of coordinates
|
||||
*
|
||||
* label_mol massive of numbers of molecule for atoms
|
||||
* log status of log-mode
|
||||
* num_atoms number of atoms
|
||||
* num_mol number of molecules
|
||||
* num_needed_mol number of needed molecules
|
||||
* needed_mol massive of number of needed molecules
|
||||
* quiet status of quiet-mode
|
||||
* true_label_mol massive of true numbers of molecule for atoms
|
||||
*
|
||||
* _atom_info atom information structure
|
||||
* _system_info system information structure
|
||||
*/
|
||||
|
||||
set_defaults (aglinp, cell, input, &log, output, &quiet);
|
||||
set_defaults (aglinp, &_system_info, input, &log, output, &quiet);
|
||||
|
||||
for (i=1; i<argc; i++)
|
||||
{
|
||||
@ -134,15 +77,14 @@ int main(int argc, char *argv[])
|
||||
{
|
||||
sprintf (tmp_str, " mm_agl\n");
|
||||
sprintf (tmp_str, "%sProgram for create PDB file with chosen agglomerate\n", tmp_str);
|
||||
sprintf (tmp_str, "%sVersion : 1.0.3 License : GPL\n", tmp_str);
|
||||
sprintf (tmp_str, "%sVersion : %s License : Beerware\n", tmp_str, PROJ_VERSION);
|
||||
sprintf (tmp_str, "%s Evgeniy Alekseev aka arcanis\n", tmp_str);
|
||||
sprintf (tmp_str, "%s E-mail : esalexeev@gmail.com\n\n", tmp_str);
|
||||
sprintf (tmp_str, "%sUsage:\n", tmp_str);
|
||||
sprintf (tmp_str, "%smm_agl -a AGL_INP -i INPUT -c X,Y,Z -o OUTPUT [ -l LOGFILE ] [ -q ] [ -h ]\n\n", tmp_str);
|
||||
sprintf (tmp_str, "%smm_agl -a AGL_INP -i INPUT -o OUTPUT [ -l LOGFILE ] [ -q ] [ -h ]\n\n", tmp_str);
|
||||
sprintf (tmp_str, "%sParametrs:\n", tmp_str);
|
||||
sprintf (tmp_str, "%s -a - input file with agglomerates (in format statgen)\n", tmp_str);
|
||||
sprintf (tmp_str, "%s -i - input file with coordinates\n", tmp_str);
|
||||
sprintf (tmp_str, "%s -c - cell size (float), A\n", tmp_str);
|
||||
sprintf (tmp_str, "%s -o - output file name\n", tmp_str);
|
||||
sprintf (tmp_str, "%s -l - log enable\n", tmp_str);
|
||||
sprintf (tmp_str, "%s -q - quiet enable\n", tmp_str);
|
||||
@ -162,12 +104,6 @@ int main(int argc, char *argv[])
|
||||
strcpy (input, argv[i+1]);
|
||||
i++;
|
||||
}
|
||||
else if ((argv[i][0] == '-') && (argv[i][1] == 'c') && (argv[i][2] == '\0'))
|
||||
// cell size
|
||||
{
|
||||
sscanf (argv[i+1], "%f,%f,%f", &cell[0], &cell[1], &cell[2]);
|
||||
i++;
|
||||
}
|
||||
else if ((argv[i][0] == '-') && (argv[i][1] == 'o') && (argv[i][2] == '\0'))
|
||||
// output file
|
||||
{
|
||||
@ -200,7 +136,7 @@ int main(int argc, char *argv[])
|
||||
print_message (quiet, stdout, log, f_log, 1, argv[0]);
|
||||
|
||||
// error check
|
||||
error = error_checking (aglinp, cell, input, output);
|
||||
error = error_checking (aglinp, _system_info, input, output);
|
||||
if (error != 0)
|
||||
{
|
||||
print_message (quiet, stderr, log, f_log, 17, argv[0]);
|
||||
@ -218,20 +154,14 @@ int main(int argc, char *argv[])
|
||||
print_message (quiet, stderr, log, f_log, 18, input);
|
||||
return 2;
|
||||
}
|
||||
fscanf (f_inp, "%i", &num_atoms);
|
||||
fscanf (f_inp, "%i", &_system_info.num_atoms);
|
||||
fclose (f_inp);
|
||||
ch_type_atoms = (char *) malloc (2 * num_atoms * sizeof (char));
|
||||
coords = (float *) malloc (3 * 8 * num_atoms * sizeof (float));
|
||||
label_mol = (int *) malloc (8 * num_atoms * sizeof (int));
|
||||
needed_mol = (int *) malloc (num_atoms * sizeof (int));
|
||||
tmp_int = (int *) malloc (8 * num_atoms * sizeof (int));
|
||||
true_label_mol = (int *) malloc (num_atoms * sizeof (int));
|
||||
_atom_info = (atom_info *) malloc (8 * _system_info.num_atoms * sizeof (atom_info));
|
||||
needed_mol = (int *) malloc (_system_info.num_atoms * sizeof (int));
|
||||
true_label_mol = (int *) malloc (_system_info.num_atoms * sizeof (int));
|
||||
// error checking
|
||||
if ((ch_type_atoms == NULL) ||
|
||||
(coords == NULL) ||
|
||||
(label_mol == NULL) ||
|
||||
if ((_atom_info == NULL) ||
|
||||
(needed_mol == NULL) ||
|
||||
(tmp_int == NULL) ||
|
||||
(true_label_mol == NULL))
|
||||
{
|
||||
print_message (quiet, stderr, log, f_log, 19, argv[0]);
|
||||
@ -239,7 +169,8 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
sprintf (tmp_str, "%6cAglomerate file: '%s';\n%6cInput file: '%s';\n\
|
||||
%6cOutput file: '%s';\n%6cLog: %i;\n%6cQuiet: %i;\n%6cCell size: %.4f, %.4f, %.4f\n",
|
||||
' ', aglinp, ' ', input, ' ', output, ' ', log, ' ', quiet, ' ', cell[0], cell[1], cell[2]);
|
||||
' ', aglinp, ' ', input, ' ', output, ' ', log, ' ', quiet, ' ', _system_info.cell[0],
|
||||
_system_info.cell[1], _system_info.cell[2]);
|
||||
print_message (quiet, stdout, log, f_log, 5, tmp_str);
|
||||
|
||||
print_message (quiet, stdout, log, f_log, 6, argv[0]);
|
||||
@ -255,10 +186,9 @@ int main(int argc, char *argv[])
|
||||
// reading coordinates
|
||||
print_message (quiet, stdout, log, f_log, 7, input);
|
||||
error = 1;
|
||||
error = reading_coords (2, input, num_needed_mol, needed_mol, cell, &num_mol,
|
||||
&num_atoms, true_label_mol, label_mol, tmp_int, coords,
|
||||
ch_type_atoms);
|
||||
centr_coords = (float *) malloc (3 * 8 * num_mol * sizeof (float));
|
||||
error = reading_coords (2, input, num_needed_mol, needed_mol, &_system_info,
|
||||
true_label_mol, _atom_info);
|
||||
centr_coords = (float *) malloc (3 * 8 * _system_info.num_mol * sizeof (float));
|
||||
if (centr_coords == NULL)
|
||||
{
|
||||
print_message (quiet, stderr, log, f_log, 19, argv[0]);
|
||||
@ -270,10 +200,10 @@ int main(int argc, char *argv[])
|
||||
if (error == 0)
|
||||
{
|
||||
sprintf (tmp_str, "%6cNumber of molecules: %i; %6cNumber of atoms: %i\n",
|
||||
' ', num_mol, ' ', num_atoms);
|
||||
' ', _system_info.num_mol, ' ', _system_info.num_atoms);
|
||||
print_message (quiet, stdout, log, f_log, 8, tmp_str);
|
||||
error = 1;
|
||||
error = set_center (num_atoms, num_mol, label_mol, coords, centr_coords);
|
||||
error = set_center (_system_info, _atom_info, centr_coords);
|
||||
}
|
||||
if (error == 0)
|
||||
{
|
||||
@ -285,8 +215,8 @@ int main(int argc, char *argv[])
|
||||
{
|
||||
print_message (quiet, stderr, log, f_log, 4, argv[0]);
|
||||
error = 1;
|
||||
error = print_structure (output, num_needed_mol, needed_mol, num_atoms,
|
||||
label_mol, ch_type_atoms, coords);
|
||||
error = print_structure (output, num_needed_mol, needed_mol, _system_info,
|
||||
_atom_info);
|
||||
}
|
||||
if (error == 0)
|
||||
print_message (quiet, stderr, log, f_log, 12, output);
|
||||
@ -295,12 +225,9 @@ int main(int argc, char *argv[])
|
||||
|
||||
print_message (quiet, stdout, log, f_log, 15, argv[0]);
|
||||
// free memory
|
||||
free (ch_type_atoms);
|
||||
free (_atom_info);
|
||||
free (centr_coords);
|
||||
free (coords);
|
||||
free (label_mol);
|
||||
free (needed_mol);
|
||||
free (tmp_int);
|
||||
free (true_label_mol);
|
||||
|
||||
print_message (quiet, stdout, log, f_log, 16, argv[0]);
|
||||
@ -308,4 +235,4 @@ int main(int argc, char *argv[])
|
||||
if (log == 1)
|
||||
fclose (f_log);
|
||||
return 0;
|
||||
}
|
||||
}
|
19
mathmech/create_archive.sh
Executable file
19
mathmech/create_archive.sh
Executable file
@ -0,0 +1,19 @@
|
||||
#!/bin/bash
|
||||
|
||||
SUBS="docs mathmech mm agl envir radf statgen trj trj2pdb"
|
||||
ADDS="AUTHORS CHANGELOG CMakeLists.txt COPYING docs.cmake doxygen.conf.in INSTALL version.h.in"
|
||||
ARCHIVE="mathmech"
|
||||
VERSION=`grep -m1 PROJECT_VERSION_MAJOR CMakeLists.txt | awk '{print $3}' | cut -c 1`.\
|
||||
`grep -m1 PROJECT_VERSION_MINOR CMakeLists.txt | awk '{print $3}' | cut -c 1`.\
|
||||
`grep -m1 PROJECT_VERSION_PATCH CMakeLists.txt | awk '{print $3}' | cut -c 1`
|
||||
|
||||
# create archive
|
||||
if [ -e ${ARCHIVE}-${VERSION}-src.zip ]; then
|
||||
rm -f ${ARCHIVE}-${VERSION}-src.zip
|
||||
fi
|
||||
zip -9qry ${ARCHIVE}-${VERSION}-src.zip ${ADDS} ${SUBS}
|
||||
|
||||
# update md5sum
|
||||
MD5SUMS=`md5sum ${ARCHIVE}-${VERSION}-src.zip | awk '{print $1}'`
|
||||
sed -i "/md5sums=('[0-9A-Fa-f]*/s/[^'][^)]*/md5sums=('${MD5SUMS}'/" PKGBUILD
|
||||
sed -i "s/pkgver=[0-9.]*/pkgver=${VERSION}/" PKGBUILD
|
15
mathmech/docs.cmake
Normal file
15
mathmech/docs.cmake
Normal file
@ -0,0 +1,15 @@
|
||||
# standart documentation
|
||||
set (PROJECT_DOCS_DIR ${CMAKE_CURRENT_SOURCE_DIR}/docs/)
|
||||
install (DIRECTORY ${PROJECT_DOCS_DIR} DESTINATION share/doc/${PROJECT_NAME})
|
||||
|
||||
# doxygen documentation
|
||||
find_package (Doxygen)
|
||||
if (DOXYGEN_FOUND)
|
||||
set (DOXYGEN_INPUT ${CMAKE_SOURCE_DIR})
|
||||
configure_file (${CMAKE_SOURCE_DIR}/doxygen.conf.in ${CMAKE_CURRENT_BINARY_DIR}/doxygen.conf)
|
||||
add_custom_target (oxygen-docs ALL COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.conf)
|
||||
install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/docs/html DESTINATION share/doc/${PROJECT_NAME})
|
||||
install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/docs/man DESTINATION share/)
|
||||
else (DOXYGEN_FOUND)
|
||||
message (STATUS "WARNING: Doxygen not found - Reference manual will not be created")
|
||||
endif ()
|
31
mathmech/docs/eng/help_agl.html
Normal file
31
mathmech/docs/eng/help_agl.html
Normal file
@ -0,0 +1,31 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">agl</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Program that creates PDB file with chosen agglomerate.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Usage</span><br />mm_agl -a FILE -i FILE -c X,Y,Z -o FILE [ -l FILE ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Parametrs</span><br />-a FILE – input file with agglomerate<br />-i FILE – input trajectory file<br />-c X,Y,Z – cell size, A<br />-o FILE – output PDB file<br />-l FILE – print log to specified file<br />-q – do not print messages to STDOUT<br />-h – show this help and exit</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">File formats</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Agglomerate file (*.agl)</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Agglomerate title (AGL=2=1.3.4.) (1 – number of molecules in the agglomerate, 1.3.4. – agglomerate class, if verification of isomorphism is specified).</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The enumeration of molecules in the agglomerate (0000001=2,3,4,5,) (1 – number of molecule (7 characters), equal sign, the enumeration of connected molecules separated by commas).</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Trajectory file (*.pdb)</span></p>
|
||||
<p align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://www.wwpdb.org/documentation/format33/sect9.html"><span style=" text-decoration: underline; color:#0000ff;">http://www.wwpdb.org/documentation/format33/sect9.html</span></a></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Operation of the application</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading titles of source files, setting values of initial variables.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading of source file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Search for the best configuration.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Print the result to the file.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Working with GUI</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select Menu -> File creator -> Agglomerate file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the file generated by statgen. Push "Select".</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select the trajectory file from the drop down list. Select the agglomerate.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output file. Create file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the tab "Generate PDB". Select "From agglomerate" from the drop down list.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the work directory.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the input trajectory file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the agglomerate file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the cell size, A.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output PDB file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the log file if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Run application.</li></ol></body></html>
|
23
mathmech/docs/eng/help_envir.html
Normal file
23
mathmech/docs/eng/help_envir.html
Normal file
@ -0,0 +1,23 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">envir</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Program that searchs environment for chosen molecule by geometric criterion.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Usage</span><br />mm_envir -i FILE -c X,Y,Z -o FILE [ -n NUMBER ] [ -r NUMBER ] [ -l FILE ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Parametrs</span><br />-i FILE – input trajectory file<br />-c X,Y,Z – cell size, A<br />-o FILE – output PDB file<br />-n NUMBER – number of molecule for search. Default is 1<br />-r NUMBER – radius of environment. Default is 6.0<br />-l FILE – print log to specified file<br />-q – do not print messages to STDOUT<br />-h – show this help and exit</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">File formats</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Trajectory file (*.pdb)</span></p>
|
||||
<p align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://www.wwpdb.org/documentation/format33/sect9.html"><span style=" text-decoration: underline; color:#0000ff;">http://www.wwpdb.org/documentation/format33/sect9.html</span></a></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Operation of the application</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading titles of source files, setting values of initial variables.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading of source file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Search for the environment.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Print the environment to the file.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Working with GUI</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the tab "Environment". Set the work directory.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the input trajectory file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the cell size, A.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output PDB file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the number of molecule for search and the radius of environment.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the log file if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Run application.</li></ol></body></html>
|
27
mathmech/docs/eng/help_radf.html
Normal file
27
mathmech/docs/eng/help_radf.html
Normal file
@ -0,0 +1,27 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">radf</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Program that calculates radial distribution function (RDF) or radial-angles distribution function (RADF).</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Usage</span><br />mm_radf -i MASK -s NUMBER,NUMBER -c X,Y,Z -at FORMAT -o FILE [ -r NUMBER,NUMBER ] [ -rs NUMBER ] [ -a NUMBER,NUMBER ] [ -as NUMBER ] [ -m ] [ -l FILE ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Parametrs</span><br />-i MASK – mask of trajectory files<br />-s NUMBER,NUMBER – first and last trajectory steps<br />-c X,Y,Z – cell size, A<br />-at FORMAT – numerical atom types between which the function is calculated. Format is "1-2" or "1,2,3-4,5,6" (automatically enable calculation of radial distribution function between centers of mass)<br />-o FILE – output file<br />-r NUMBER,NUMBER – radial criteria, A. Default is 2.0 and 15.0<br />-rs NUMBER – radius change step, A. Default is 0.2<br />-a NUMBER,NUMBER – angular criteria, deg. Default is 0.0 and 90.0<br />-as NUMBER – angle change step, deg. This option will enable calculation of radial-angles distribution function<br />-as – enable matrix output<br />-l FILE – print log to specified file<br />-q – do not print messages to STDOUT<br />-h – show this help and exit</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">File formats</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Output file (*.dat)</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Program name and version are shown in the title. For example, "radf ::: V.1.1.0". Blank line.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The configuration block "CONFIGURATION ... END". Print log (LOG=1), do not print messages to STDOUT (QUIET=1), matrix output (MATRIX=1), mask of trajectory files (MASK=mask), first (FIRST=1) and last (LAST=1) trajectory steps, sell size (CELL=1.0000,2.0000,3.0000), mode (MODE=0) (0 – radial distribution function, 1 – radial distribution function between centers of mass, 2 – radial-angles distribution function), radial criteria (R_MIN=0.100) (R_MAX=0.100) (R_STEP=0.100), angular criteria for radial-angles distribution function (ANG_MIN=0.10) (ANG_MAX=0.10) (ANG_STEP=0.10), atom types (ATOM=1-2) or (ATOM=1,2,3-4,5,6). Blank line.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The results block «SUMMARY STATISTIC … ------------------------------------------------». Table layout (2 rows) follows after specifying the block if matrix output disables.<br />The table format for radial distribution function (matrix output disables)<br /> 0001.0000 2.0000e-01 000000003 04.000000<br />Space, sphere radius (9 characters, 4 decimal part), space, segment volume (10 characters, 4 decimal part), space, number of molecules in this radius (9 characters), space, radial distribution function (9 characters, 6 decimal part).<br />The table format for radial distribution function (matrix output enables)<br /> 0001.0000 04.000000<br />Space, sphere radius (9 characters, 4 decimal part), space, radial distribution function (9 characters, 6 decimal part).<br />The table format for radial-angles distribution function (matrix output disables)<br /> 0001.0000 000005.00 2.0000e-01 000000003 04.000000<br />Space, sphere radius (9 characters, 4 decimal part), space, segment angle (9 characters, 2 decimal part), segment volume (10 characters, 4 decimal part), space, number of molecules in this segment (9 characters), space, radial-angles distribution function (9 characters, 6 decimal part).<br />The table format for radial-angles distribution function (matrix output enables). Segment angle (9 characters, 2 decimal part) is shown in the title<br /> 0001.0000 04.000000 ...<br />Space, sphere radius (9 characters, 4 decimal part), space, radial-angles distribution function (9 characters, 6 decimal part) separated by spaces.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">End of the table</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Operation of the application</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading titles of source files, setting values of initial variables.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Step by step reading of source files, settings values of variables.<br />Calculating of the number of pairs of molecules in various relative configurations.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Print the result to the file.<br />Radial distribution function calculated by:<br />RDF(r) = (1 / norm) * sum(d(r_n-r), n),<br />norm(r) = (4*PI*r^2*dr) * ro * N * N_step,<br />where d(r_n-r) is the delta function, r is a shpere radius, n is a number of molecule, dr is the radius change step, ro is the number of molecules per volume unit, N is the number of molecules, N_step is a number of trajectory step.<br />Radial-angles distribution function calculated by:<br />RADF(r, fi) = (1 / norm) * sum(sum(d(r_n-r)*d(fi_n-fi), n), n),<br />norm(r, fi) = (4*PI*r^2*sin(fi)*dr*dfi) * ro * N * N_step,<br />where d(r_n-r) and d(fi_n-fi) are the delta functions, r is a shpere radius, fi is a segment angle, n is a number of molecule, dr is the radius change step, dfi is the angle change step, ro is the number of molecules per volume unit, N is the number of molecules, N_step is a number of trajectory step.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Working with GUI</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the tab "RADF". Set the work directory.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the mask of trajectory files.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the first and the last trajectory steps.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the cell size, A.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set needed atoms.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set radial criteria. Set angular criteria if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the matrix output, the log file and the graph generate if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Run application.</li></ol></body></html>
|
29
mathmech/docs/eng/help_statgen.html
Normal file
29
mathmech/docs/eng/help_statgen.html
Normal file
@ -0,0 +1,29 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">statgen</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Program that analyzes molecular dynamics trajectories using topological analysis.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Usage</span><br />mm_statgen -i MASK -s NUMBER,NUMBER -c X,Y,Z -a FORMAT -r FORMAT -o FILE [ -g NUMBER ] [ -l FILE ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Parametrs</span><br />-i MASK – mask of trajectory files<br />-s NUMBER,NUMBER – first and last trajectory steps<br />-c X,Y,Z – cell size, A<br />-a FORMAT – numerical atom types. Maximum number of different atom types is 4. Types are comma separated<br />-r FORMAT – criteria, A. This flag can be used multiple times. Different interactions are comma separated. Type interaction, colon character, criterion. For example "0-0:2.4,0-1:3.0" means set 0-0 interaction as <2.4 А and 0-1 interaction as <3.0 A<br />-o FILE – output file<br />-g NUMBER – chech graph isomorphism. NUMBER is a maximum depth for search cycles (>= 3)<br />-l FILE – print log to specified file<br />-q – do not print messages to STDOUT<br />-h – show this help and exit</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">File formats</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Output file (*.dat)</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Program name and version are shown in the title. For example, "statgen ::: V.1.1.0". Blank line.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The configuration block "CONFIGURATION ... END". Print log (LOG=1), do not print messages to STDOUT (QUIET=1), mask of trajectory files (MASK=mask), first (FIRST=1) and last (LAST=1) trajectory steps, sell size (CELL=1.0000,2.0000,3.0000), atom types (ATOMS=1,2,3,4), interactions (INTERACTION=format), maximum depth for check cycle number (DEPTH=0, 0 - do not check graph isomorphism). Blank line.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The enumeration of statistics on individual files.<br />File name (FILE=mask.001), the statistic block for file "STATISTIC ... -----------------". Table layout (2 rows) follows after specifying the block. The table format<br /> 0000001 0000001 <br />Space, agglomerate size (7 characters), space, number of agglomerates of this size in the file (7 characters).<br />The enumeration of agglomerates in the file. Agglomerate title (AGL=2=1.3.4.) (1 – number of molecules in the agglomerate, 1.3.4. – agglomerate class, if verification of isomorphism is specified). The enumeration of molecules in the agglomerate. (0000001=2,3,4,5,) (1 – number of molecule (7 characters), equal sign, the enumeration of connected molecules separated by commas).</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The summary statistic block "SUMMARY STATISTIC … ------------------------------------------------". Table layout (2 rows) follows after specifying the block. The table format<br /> 0000001 0000002 000003.00 004.00000 0005.00000<br />Space, agglomerate size (7 characters), space, total number of agglomerates of this size (7 characters), space, average concentration of agglomerates of this size (9 characters, 2 decimal part), space, probability of finding molecules in agglomerates of this size (9 characters, 5 decimal part), space, probability of finding molecules in agglomerates of this size multiplied by the size (10 characters, 5 decimal part).</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Summary statistic of agglomerates on classes (if verification of isomorphism is specified). The proportion of linear (LINEAR=0.10000) and cyclic (CYCLE=0.10000) agglomerates, blank line, the proportion of not branched (NOT BRANCHED=0.10000) and branched (BRANCHED=0.10000) agglomerates, blank line, the proportion of found cycles of the specified size (CYCLE_03=0.10000).</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Operation of the application</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading titles of source files, setting values of initial variables.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Step by step reading of source files, settings values of variables.<br />Search for interactions that satisfy the specified criteria.<br />The analysis of all connections and specifying to the two molecules that connected, if the conditions are satisfied at least one of these criteria.<br />Adding molecules to agglomerates according to the obtained connectivity matrix.<br />Print agglomerates to the file, adding the summary statistics.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Print the summary statistic to the file.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Working with GUI</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the tab "Agglomeration". Set the work directory.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the mask of trajectory files.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the first and the last trajectory steps.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the cell size, A.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set needed atoms.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set interactions. Select type of interaction from the drop down list, change its criterion and press "Save". Press "Add" after ending of edition. After this the interaction will appear in the special window. To remove an interaction you need select the desired interaction in the special window and press "Remove".</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the maximum depth for search cycles, the log file and the graph generate if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For the variation of geometric criteria you need specify the criteria step changes and the number of steps.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Run application.</li></ol></body></html>
|
29
mathmech/docs/eng/help_trj.html
Normal file
29
mathmech/docs/eng/help_trj.html
Normal file
@ -0,0 +1,29 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">trj</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Program that generates trajectory files in special format from input trajectory.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Usage</span><br />mm_trj -i FILE -t TYPE -s NUMBER -a FILE -o MASK [ -tt NUMBER ] [ -l FILE ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Parametrs</span><br />-i FILE – input trajectory file<br />-t TYPE – trajectory type. Supported formats: gmx, puma<br />-s NUMBER – number of trajectory steps<br />-a FILE – file with atom types<br />-o MASK – mask of output trajectory files<br />-tt NUMBER – maximum number of different atom types. Default is 1024<br />-l FILE – print log to specified file<br />-q – do not print messages to STDOUT<br />-h – show this help and exit</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">File formats</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Trajectory files (*.[0-9])</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Number of atoms is shown in the title.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Trajectory snapshot (enumeration of all atoms in system). Format<br />00001 СА 1234.000000 1234.000000 1234.000000 01 0001<br />The sequence number of an atom (5 characters), space, character atom type (2 characters), 2 spaces, X coordinate (11 characters, 6 decimal part), Y coordinate (11 characters, 6 decimal part), Z coordinate (11 characters, 6 decimal part), 4 spaces, numerical atom type (2 characters), space, number of molecule (4 characters).</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Atom types file (*.types)</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The number of different molecules (NUMTYPES=1) is shown in the title.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The molecules enumeration block. Variables are the number of molecules (NUMMOL=1), the number of atoms (NUMAT=1).<br />The atoms enumeration block. Format<br />CA=1<br />Character atom type (2 characters), equal sign, numerical atom type.</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Operation of the application</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading titles of source files, setting values of initial variables.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Step by step reading of source files, print results to the specified output file.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Working with GUI</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select Menu -> File creator -> Atom types file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set atom types. To add a new molecule you need select "Add new molecule" from the drop down list. To change the number of molecules you need change the corresponding numeric value. To add a new atom you need enter 2 character to the special field, set numerical atom type and press "Add". After this the atom will appear in the special window. To remove an atom you need select the desired atom in the special window and press "Remove".</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Create the atom types file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the tab "Generate trajectory". Set the work directory.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the input trajectory file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select the trajectory type from the drop down list, set the number of trajectory steps.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the atom types file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the mask of output files.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the maximum number of different atom types and the log file if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Run application.</li></ol></body></html>
|
21
mathmech/docs/eng/help_trj2pdb.html
Normal file
21
mathmech/docs/eng/help_trj2pdb.html
Normal file
@ -0,0 +1,21 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">trj2pdb</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Program that creates PDB file from trajetory snapshot.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Usage</span><br />mm_trj2pdb -i FILE -o FILE [ -l FILE ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Parametrs</span><br />-i FILE – input trajectory file<br />-o FILE – output PDB file<br />-l FILE – print log to specified file<br />-q – do not print messages to STDOUT<br />-h – show this help and exit</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">File formats</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Trajectory file (*.pdb)</span></p>
|
||||
<p align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://www.wwpdb.org/documentation/format33/sect9.html"><span style=" text-decoration: underline; color:#0000ff;">http://www.wwpdb.org/documentation/format33/sect9.html</span></a></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Operation of the application</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading titles of source files, setting values of initial variables.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading of source file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Print the result to the file.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Working with GUI</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the tab "Generate PDB". Select "From trajectory snapshot" from the drop down list.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the work directory.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the input trajectory file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output PDB file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the log file if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Run application.</li></ol></body></html>
|
31
mathmech/docs/rus/help_agl.html
Normal file
31
mathmech/docs/rus/help_agl.html
Normal file
@ -0,0 +1,31 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">agl</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Программа для генерации PDB файлов с агломератами.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Использование</span><br />mm_agl -a ФАЙЛ -i ФАЙЛ -c X,Y,Z -o ФАЙЛ [ -l ФАЙЛ ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Параметры</span><br />-a ФАЙЛ – исходный файл с агломератом<br />-i ФАЙЛ – исходный файл с координатами<br />-c X,Y,Z – размер элементарной ячейки, А<br />-o ФАЙЛ – генерируемый PDB файл с координатами<br />-l ФАЙЛ – запись лога в указанный файл<br />-q – не выводить сообщения в STDOUT<br />-h – показать эту справку и выйти</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Форматы файлов</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Файл с агломератом (*.agl)</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Заголовок агломерата (AGL=2=1.3.4.) (1 – число молекул в агломерате, 1.3.4. – класс агломерата, если указана проверка изоморфизма).</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Перечисление молекул в агломерате (0000001=2,3,4,5,) (1 – номер молекулы (7 символов), знак равенства, перечисление связанных молекул через запятую).</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Файл траектории (*.pdb)</span></p>
|
||||
<p align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://www.wwpdb.org/documentation/format33/sect9.html"><span style=" text-decoration: underline; color:#0000ff;">http://www.wwpdb.org/documentation/format33/sect9.html</span></a></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Работа приложения</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Чтение заголовков исходных файлов, установка начальных переменных.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Чтение исходных файлов.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Поиск оптимальной конфигурации.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Печать результата в файл.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Работа с графическим интерфейсом</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Меню -> Создание файлов -> Файл с агломератом.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать файл, сгенерированный приложением statgen. Нажать "Выбор".</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Выбрать траекторный снимок в выпадающем списке. Выбрать агломерат.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать выходной файл. Создать файл с агломератом.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">5. Перейти во вкладку "Создать PDB". Из выпадающего списка выбрать "Из агломерата".</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать рабочую директорию.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать файл траектории.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать сгенерированный файл с агломератом.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать размер ячейки в А.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать генерируемый PDB файл.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">При необходимости указать файл лога.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Запустить приложение.</li></ol></body></html>
|
23
mathmech/docs/rus/help_envir.html
Normal file
23
mathmech/docs/rus/help_envir.html
Normal file
@ -0,0 +1,23 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">envir</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Программа для генерации PDB файла указанной молекулы с окружением указанного радиуса.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Использование</span><br />mm_envir -i ФАЙЛ -c X,Y,Z -o ФАЙЛ [ -n ЧИСЛО ] [ -r ЧИСЛО ] [ -l ФАЙЛ ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Параметры</span><br />-i ФАЙЛ – исходный файл с координатами<br />-c X,Y,Z – размер элементарной ячейки, А<br />-o ФАЙЛ – генерируемый PDB файл с координатами<br />-n ЧИСЛО – номер молекулы для поиска окружения. По умолчанию 1<br />-r ЧИСЛО – радиус окружения, А. По умолчанию 6.0<br />-l ФАЙЛ – запись лога в указанный файл<br />-q – не выводить сообщения в STDOUT<br />-h – показать эту справку и выйти</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Форматы файлов</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Файл траектории (*.pdb)</span></p>
|
||||
<p align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://www.wwpdb.org/documentation/format33/sect9.html"><span style=" text-decoration: underline; color:#0000ff;">http://www.wwpdb.org/documentation/format33/sect9.html</span></a></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Работа приложения</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Чтение заголовков исходных файлов, установка начальных переменных.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Чтение исходного файла.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Поиск окружения.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Печать окружения в файл.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Работа с графическим интерфейсом</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Перейти во вкладку "Окружение". Указать рабочую директорию.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать исходный файл.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать размер ячейки в А.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать генерируемый PDB файл.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать молекулу для поиска окружения и радиус окружения в А.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">При необходимости указать файл лога.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Запустить приложение.</li></ol></body></html>
|
27
mathmech/docs/rus/help_radf.html
Normal file
27
mathmech/docs/rus/help_radf.html
Normal file
@ -0,0 +1,27 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">radf</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Программа для расчета функций радиального (ФРР) и радиально-углового распределения (ФРУР).</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Использование</span><br />mm_radf -i МАСКА -s ЧИСЛО,ЧИСЛО -c X,Y,Z -at ФОРМАТ -o ФАЙЛ [ -r ЧИСЛО,ЧИСЛО ] [ -rs ЧИСЛО ] [ -a ЧИСЛО,ЧИСЛО ] [ -as ЧИСЛО ] [ -m ] [ -l ФАЙЛ ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Параметры</span><br />-i МАСКА – маска снимков траектории<br />-s ЧИСЛО,ЧИСЛО – первый и последний шаги траектории<br />-c X,Y,Z – размер элементарной ячейки, А<br />-at ФОРМАТ – численные типы атомов между которыми строится функция. Формат "1-2" или "1,2,3,-4,5,6" (автоматически включит расчет функции радиального распределения между центрами масс).<br />-o ФАЙЛ – генерируемый файл<br />-r ЧИСЛО,ЧИСЛО – минимальный и максимальный радиус, А. По умолчанию 2.0 и 15.0<br />-rs ЧИСЛО – шаг изменения радиуса, А. По умолчанию 0.2<br />-a ЧИСЛО,ЧИСЛО – минимальный и максимальный угол, град. По умолчанию 0.0 и 90.0<br />-as ЧИСЛО – шаг изменения угла, град. Эта опция включит расчет функции радиально-углового распределения<br />-m – печать в виде матрицы<br />-l ФАЙЛ – запись лога в указанный файл<br />-q – не выводить сообщения в STDOUT<br />-h – показать эту справку и выйти</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Форматы файлов</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Генерируемый файл (*.dat)</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">В заголовке указывается название программы и ее версия, например "radf ::: V.1.1.0". Пустая строка.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Блок конфигурации "CONFIGURATION … END". Печать лога (LOG=1), не выводить сообщения в STDOUT (QUIET=1), матричный вывод (MATRIX=1), файлов (MASK=mask), первый (FIRST=1) и последний (LAST=1) шаги траектории, размер ячейки (CELL=1.0000,2.0000,3.0000), тип расчета (MODE=0) (0 – для функции радиального распределения, 1 – для функции радиального распределения для центров масс, 2 – для функции радиально-углового распределения), радиальные критерии (R_MIN=0.100) (R_MAX=0.100) (R_STEP=0.100), угловые критерии для функции радиально-углового распределения (ANG_MIN=0.10) (ANG_MAX=0.10) (ANG_STEP=0.10), типы атомов (ATOM=1-2) или (ATOM=1,2,3-4,5,6). Пустая строка.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Блок результатов "SUMMARY STATISTIC … ------------------------------------------------". После указания блока, если отключен матричный вывод, следует разметка таблицы (2 строки).<br />Формат таблицы для функций радиального распределения (матричный вывод отключен)<br /> 0001.0000 2.0000e-01 000000003 04.000000<br />Пробел, радиус сферы (9 символов, 4 десятичной части), пробел, объем сегмента (10 символов, 4 десятичной части), пробел, число молекул в данном сегменте (9 символов), функция радиального распределения (9 символов, 6 десятичной части).<br />Формат таблицы для функций радиального распределения (матричный вывод включен)<br /> 0001.0000 04.000000<br />Пробел, радиус сферы (9 символов, 4 десятичной части), пробел, функция радиального распределения (9 символов, 6 десятичной части).<br />Формат таблицы для функций радиально-углового распределения (матричный вывод отключен)<br /> 0001.0000 000005.00 2.0000e-01 000000003 04.000000<br />Пробел, радиус сферы (9 символов, 4 десятичной части), пробел, угол (9 символов, 2 десятичной части), пробел, объем сегмента (10 символов, 4 десятичной части), пробел, число молекул в данном сегменте (9 символов), функция радиально-углового распределения (9 символов, 6 десятичной части).<br />Формат таблицы для функций радиально-углового распределения (матричный вывод включен). В заголовке указывается угол (9 символов, 2 десятичной части)<br /> 0001.0000 04.000000 …<br />Пробел, радиус сферы (9 символов, 4 десятичной части), пробел, функция радиально-углового распределения (9 символов, 6 десятичной части) через пробелы, соответствующие данному углу.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Конец таблицы.</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Работа приложенияn</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Чтение заголовков исходных файлов, установка начальных переменных.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Пошаговое чтение исходных файлов. Установка переменных.<br />Расчет количества пар молекул, находящихся в различных взаимных конфигурациях.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Печать результата в файл.<br />Функция радиального распределения рассчитывается по формуле:<br />RDF(r) = (1 / norm) * sum(d(r_n-r), n),<br />norm(r) = (4*PI*r^2*dr) * ro * N * N_step,<br />где d(r_n-r) – дельта-функция, r – радиус сферы, n – номер молекулы, dr – шаг изменения радиуса, ro – число молекул в единице объема, N – число молекул, N_step – число шагов траектории.<br />Функция радиально-углового распределения рассчитывается по формуле:<br />RADF(r, fi) = (1 / norm) * sum(sum(d(r_n-r)*d(fi_n-fi), n), n),<br />norm(r, fi) = (4*PI*r^2*sin(fi)*dr*dfi) * ro * N * N_step,<br />где d(r_n-r) и d(fi_n-fi) – дельта-функции, r – радиус сферы, fi – угол, n – номер молекулы, dr – шаг изменения радиуса, dfi – шаг изменения угла, ro – число молекул в единице объема, N – число молекул, N_step – число шагов траектории.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Работа с графическим интерфейсом</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Перейти во вкладку "ФРУР". Указать рабочую директорию.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать маску траекторных файлов.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать первый и последний шаги траектории.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать размер ячейки в А.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать генерируемый файл.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать искомые атомы.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать радиальные параметры функции в А. При необходимости указать угловые параметры функции в градусах.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">При необходимости указать печать в виде матрицы, файл лога и генерацию графика.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Запустить приложение.</li></ol></body></html>
|
29
mathmech/docs/rus/help_statgen.html
Normal file
29
mathmech/docs/rus/help_statgen.html
Normal file
@ -0,0 +1,29 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">statgen</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Программа для анализа снимков молекулярно-динамических траекторий – выделяет молекулы в агломераты согласно указанному геометрическому критерию.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Использование</span><br />mm_statgen -i МАСКА -s ЧИСЛО,ЧИСЛО -c X,Y,Z -a ФОРМАТ -r ФОРМАТ -o ФАЙЛ [ -g ЧИСЛО ] [ -l ФАЙЛ ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Параметры</span><br />-i МАСКА – маска снимков траектории<br />-s ЧИСЛО,ЧИСЛО – первый и последний шаги траектории<br />-c X,Y,Z – размер элементарной ячейки, А<br />-a ФОРМАТ – численные типы атомов. Максимальное число различных атомов 4. Типы атомов перечисляются через запятую<br />-r ФОРМАТ – критерии, А. Этот флаг может быть указан несколько раз. Различные взаимодействия перечисляются через запятую. Указывается тип взаимодействия, двоеточие, критерий. Например, "0-0:2.4,0-1:3.0" означает указание 0-0 взаимодействия <2.4 А и 0-1 <3.0 А.<br />-o ФАЙЛ – генерируемый файл<br />-g NUMBER – проверять изоморфизм графов. ЧИСЛО – максимальная глубина для проверки числа циклов (>= 3)<br />-l ФАЙЛ – запись лога в указанный файл<br />-q – не выводить сообщения в STDOUT<br />-h – показать эту справку и выйти</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Форматы файлов</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Генерируемый файл (*.dat)</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">В заголовке указывается название программы и ее версия, например "statgen ::: V.1.1.0". Пустая строка.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Блок конфигурации "CONFIGURATION … END". Печать лога (LOG=1), не выводить сообщения в STDOUT (QUIET=1), маска файлов (MASK=mask), первый (FIRST=1) и последний (LAST=1) шаги траектории, размер ячейки (CELL=1.0000,2.0000,3.0000), типы атомов (ATOMS=1,2,3,4), взаимодействия (INTERACTION=формат), максимальная глубина для проверки числа циклов (DEPTH=0, 0 – не проверять изоморфизм). Пустая строка.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Перечисление статистики по файлам.<br />Имя файла (FILE=mask.001), блок статистики по файлу "STATISTIC … -----------------". После указания блока следует разметка таблицы (2 строки). Формат таблицы<br /> 0000001 0000001 <br />Пробел, размер агломерата (7 символов), пробел, число агломератов данной стехиометрии в файле (7 символов).<br />Перечисление агломератов, найденных в данном файле. Заголовок агломерата (AGL=2=1.3.4.) (1 – число молекул в агломерате, 1.3.4. – класс агломерата, если указана проверка изоморфизма). Перечисление молекул в агломерате (0000001=2,3,4,5,) (1 – номер молекулы (7 символов), знак равенства, перечисление связанных молекул через запятую).</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Общая статистика ".SUMMARY STATISTIC … ------------------------------------------------"..После указания блока следует разметка таблицы (2 строки). Формат таблицы<br /> 0000001 0000002 000003.00 004.00000 0005.00000<br />Пробел, размер агломерата (7 символов), пробел, общее число агломератов данной стехиометрии (7 символов), пробел, средняя концентрация агломератов данной стехиометрии (9 символов, 2 десятичной части), пробел, вероятность нахождения молекулы в агломерате данной стехиометрии (9 символов, 5 десятичной части), пробел, вероятность нахождения молекулы в агломерате данной стехиометрии, умноженная на число молекул в агломерате (10 символов, 5 десятичной части).</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Общая статистика агломератов по классам (если указана проверка изоморфизма). Доля линейных (LINEAR=0.10000) и циклических (CYCLE=0.10000) агломератов, пропуск строки, доля неразветвленных (NOT BRANCHED=0.10000) и разветвленных (BRANCHED=0.10000) агломератов, пропуск строки, доля найденных циклов указанного размера (CYCLE_03=0.10000).</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Работа приложения</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Чтение заголовков исходных файлов, установка начальных переменных.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Пошаговое чтение исходных файлов, установка переменных.<br />Поиск взаимодействий, удовлетворяющих указанным критериям.<br />Анализ всех связей и указание связи двух молекул, если удовлетворяется условия хотя бы одного из указанных критериев.<br />Добавление молекул в агломераты согласно полученной матрице связанности.<br />Печать агломератов в файл, дополнение общей статистики.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Печать общей статистики в файл.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Работа с графическим интерфейсом</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Перейти во вкладку "Агломерация". Указать рабочую директорию.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать маску траекторных файлов.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать первый и последний шаги траектории.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать размер ячейки в А.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать искомые атомы.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать взаимодействия. Из выпадающего списка выбрать тип взаимодействия, изменить при его критерий (А) и нажать "Сохранить". После завершения редактирования нажать "Добавить" – после этого взаимодействие появится в специальном окошке.. Для удаления взаимодействия необходимо выделить нужное взаимодействие в окошке и нажать "Удалить".</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать генерируемый файл.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">При необходимости указать максимальную глубину для проверки числа циклов в агломератах, файл лога и генерацию графика.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Для вариации геометрических критериев необходимо указать шаг изменения критериев и число шагов.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Запустить приложение.</li></ol></body></html>
|
29
mathmech/docs/rus/help_trj.html
Normal file
29
mathmech/docs/rus/help_trj.html
Normal file
@ -0,0 +1,29 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">trj</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Программа для генерации специальных траекторных файлов из указанных исходных.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Использование</span><br />mm_trj -i ФАЙЛ -t ТИП -s ЧИСЛО -a ФАЙЛ -o МАСКА [ -tt ЧИСЛО ] [ -l ФАЙЛ ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Параметры</span><br />-i ФАЙЛ – исходный траекторный файл<br />-t ТИП – тип траектории. Поддерживаемые форматы: gmx, puma<br />-s ЧИСЛО – число шагов траектории<br />-a ФАЙЛ – файл с указанием типов атомов<br />-o МАСКА – маска получаемых траекторных файлов<br />-tt ЧИСЛО – максимальное число различных типов атомов. По умолчанию 1024<br />-l ФАЙЛ – запись лога в указанный файл<br />-q – не выводить сообщения в STDOUT<br />-h – показать эту справку и выйти</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Форматы файлов</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Файлы траектории (*.[0-9])</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">В заголовке указывается число атомов (7 символов).</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Снимок траектории (перечисление всех атомов). Формат<br />00001 СА 1234.000000 1234.000000 1234.000000 01 0001<br />Порядковый номер атома (5 символов), пробел, символьный тип атома (2 символа), 2 пробела, координата X (11 символов, 6 десятичной части), координата Y (11 символов, 6 десятичной части), координата Z (11 символов, 6 десятичной части), 4 пробела, численный тип атома (2 символа), пробел, номер молекулы (4 символа).</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Файл с указанием типов атомов (*.types)</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">В заголовке указывается число молекул (NUMTYPES=1).</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Блок перечисления молекул. Переменные число молекул (NUMMOL=1), число атомов (NUMAT=1).<br />Блок перечисления атомов в молекуле. Формат<br />CA=1<br />Символьный тип атома (2 символа), символ равенства, численный тип атома.</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Работа приложения</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Чтение заголовков исходных файлов, установка начальных переменных.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Пошаговое чтение исходных файлов и вывод шагов в указанные файлы.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Работа с графическим интерфейсом</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Выбрать Меню -> Создание файлов -> Файл типов атомов.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать генерируемый файл.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Заполнить типы атомов. Для добавления новой молекулы выбрать из выпадающего списка "Добавить новую молекулу". Для изменения числа молекул изменить соответствующее числовое значение. Для добавления нового атома необходимо ввести 2 символа в специальное поле, указать численный тип атома и нажать "Добавить" – после этого атом появится в специальном окошке. Для удаления атома необходимо выделить нужный атом в окошке и нажать "Удалить".</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Создать файл типов атомов.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Перейти во вкладку "Создать траекторию". Указать рабочую директорию.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать исходный траекторный файл.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Выбрать тип траектории из выпадающего списка, указать число шагов траектории.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать созданный ранее файл типов атомов.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать маску генерируемых файлов.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">При необходимости указать максимальное число различных типов атомов и файл лога.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Запустить приложение.</li></ol></body></html>
|
21
mathmech/docs/rus/help_trj2pdb.html
Normal file
21
mathmech/docs/rus/help_trj2pdb.html
Normal file
@ -0,0 +1,21 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">trj2pdb</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Программа для генерации PDB файла из исходных траекторных файлов.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Использование</span><br />mm_trj2pdb -i ФАЙЛ -o ФАЙЛ [ -l ФАЙЛ ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Параметры</span><br />-i ФАЙЛ – исходный файл с координатами<br />-o ФАЙЛ – генерируемый PDB файл с координатами<br />-l ФАЙЛ – запись лога в указанный файл<br />-q – не выводить сообщения в STDOUT<br />-h – показать эту справку и выйти</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Форматы файлов</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Файл траектории (*.pdb)</span></p>
|
||||
<p align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://www.wwpdb.org/documentation/format33/sect9.html"><span style=" text-decoration: underline; color:#0000ff;">http://www.wwpdb.org/documentation/format33/sect9.html</span></a></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Работа приложения</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Чтение заголовков исходных файлов, установка начальных переменных.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Чтение исходного файла.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Печать в файл.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Работа с графическим интерфейсом</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Перейти во вкладку "Создать PDB". Из выпадающего списка выбрать "Из снимка траектории".</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать рабочую директорию.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать файл траектории.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Указать генерируемый PDB файл.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">При необходимости указать файл лога.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Запустить приложение.</li></ol></body></html>
|
2315
mathmech/doxygen.conf.in
Normal file
2315
mathmech/doxygen.conf.in
Normal file
File diff suppressed because it is too large
Load Diff
21
mathmech/envir/CMakeLists.txt
Normal file
21
mathmech/envir/CMakeLists.txt
Normal file
@ -0,0 +1,21 @@
|
||||
# set project name
|
||||
set (SUBPROJECT envir)
|
||||
# set additional cmake file
|
||||
include (${SUBPROJECT}.cmake)
|
||||
|
||||
# set libraries
|
||||
set (LIBRARIES mm)
|
||||
foreach (LIBRARY ${LIBRARIES})
|
||||
include_directories (${CMAKE_CURRENT_SOURCE_DIR}/../${LIBRARY}/include/)
|
||||
if (CMAKE_COMPILER_IS_GNUCXX)
|
||||
link_directories (${LIBRARY}/src/lib)
|
||||
elseif (CMAKE_COMPILER_IS_MSVC)
|
||||
link_directories (${LIBRARY}/src/Release)
|
||||
endif ()
|
||||
endforeach ()
|
||||
|
||||
# additional targets
|
||||
set (TARGETS "")
|
||||
set (HEADERS "")
|
||||
|
||||
add_subdirectory (${SUBPROJECT_SOURCE_DIR})
|
@ -1,9 +1,7 @@
|
||||
mm_envir - program that searchs environment for chosen molecule by geometric criterion
|
||||
Version: 1.0.3
|
||||
License: GPL
|
||||
envir - program that searchs environment for chosen molecule by geometric criterion
|
||||
|
||||
Usage:
|
||||
mm_envir -i FILENAME -c X,Y,Z -o FILEMANE [ -n NUM_OF_MOLECULE ] [ -r RADIUS ]
|
||||
envir -i FILENAME -c X,Y,Z -o FILEMANE [ -n NUM_OF_MOLECULE ] [ -r RADIUS ]
|
||||
[ -l LOGFILE ] [ -q ] [ -h ]
|
||||
|
||||
Parametrs:
|
10
mathmech/envir/envir.cmake
Normal file
10
mathmech/envir/envir.cmake
Normal file
@ -0,0 +1,10 @@
|
||||
# set directories
|
||||
set (SUBPROJECT_BINARY_DIR bin)
|
||||
set (SUBPROJECT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||
|
||||
# include_path
|
||||
include_directories (${SUBPROJECT_SOURCE_DIR}
|
||||
${CMAKE_CURRENT_BINARY_DIR}/../)
|
||||
|
||||
# executable path
|
||||
set (EXECUTABLE_OUTPUT_PATH ${SUBPROJECT_BINARY_DIR})
|
23
mathmech/envir/src/CMakeLists.txt
Normal file
23
mathmech/envir/src/CMakeLists.txt
Normal file
@ -0,0 +1,23 @@
|
||||
# set files
|
||||
file (GLOB SOURCES *.c)
|
||||
file (GLOB HEADERS *.h)
|
||||
|
||||
# set library
|
||||
if (CMAKE_COMPILER_IS_GNUCXX)
|
||||
set (ADDITIONAL_LIB m)
|
||||
else ()
|
||||
set (ADDITIONAL_LIB)
|
||||
endif ()
|
||||
|
||||
# message
|
||||
message (STATUS "${SUBPROJECT} SOURCES: ${SOURCES}")
|
||||
message (STATUS "${SUBPROJECT} HEADERS: ${HEADERS}")
|
||||
|
||||
# link libraries and compile
|
||||
add_executable (${SUBPROJECT} ${SOURCES} ${HEADERS})
|
||||
set_target_properties (${SUBPROJECT} PROPERTIES OUTPUT_NAME ${MM_PREFIX}${SUBPROJECT})
|
||||
add_dependencies (${SUBPROJECT} ${LIBRARIES})
|
||||
target_link_libraries (${SUBPROJECT} ${ADDITIONAL_LIB} ${LIBRARIES})
|
||||
|
||||
# install properties
|
||||
install (TARGETS ${SUBPROJECT} DESTINATION bin)
|
72
mathmech/envir/src/add_main.c
Normal file
72
mathmech/envir/src/add_main.c
Normal file
@ -0,0 +1,72 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file add_main.c
|
||||
* Source code of envir
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "add_main.h"
|
||||
#include <mathmech/messages.h>
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
* @fn error_checking
|
||||
*/
|
||||
int error_checking (const system_info _system_info, const char *input,
|
||||
const char *output)
|
||||
{
|
||||
if (input[0] == '#')
|
||||
return 12;
|
||||
if (output[0] == '#')
|
||||
return 13;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @fn print_message
|
||||
*/
|
||||
int print_message (const int quiet, FILE *std_output, const int log, FILE *f_log,
|
||||
const int mode, const char *str)
|
||||
{
|
||||
if ((quiet != 1) && (std_output != stderr))
|
||||
message (0, mode, str, std_output);
|
||||
if (log == 1)
|
||||
message (1, mode, str, f_log);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @fn set_defaults
|
||||
*/
|
||||
int set_defaults (system_info *_system_info, char *input, int *log, int *num_of_mol,
|
||||
char *output, int *quiet, float *rad)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i=0; i<3; i++)
|
||||
(*_system_info).cell[i] = 0.0;
|
||||
input[0] = '#';
|
||||
*log = 0;
|
||||
*num_of_mol = 1;
|
||||
output[0] = '#';
|
||||
*quiet = 0;
|
||||
*rad = 6.0;
|
||||
|
||||
return 0;
|
||||
}
|
@ -1,23 +1,32 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file
|
||||
* @file add_main.h
|
||||
* Header of envir
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#ifndef ADD_MAIN_H
|
||||
#define ADD_MAIN_H
|
||||
|
||||
#include "messages.h"
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
* @fn error_checking
|
||||
*/
|
||||
int error_checking (const float *cell, const char *input, const char *output)
|
||||
/**
|
||||
* @brief function that checks errors in input variables
|
||||
* @code
|
||||
* error_checking (cell, input, output);
|
||||
* error_checking (_system_info, input, output);
|
||||
* @endcode
|
||||
*
|
||||
* @param cell massive of cell size
|
||||
* @param _system_info system information structure
|
||||
* @param input input file name
|
||||
* @param output output file name
|
||||
*
|
||||
@ -26,23 +35,10 @@ int error_checking (const float *cell, const char *input, const char *output)
|
||||
* @return 13 - error in 'output'
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
{
|
||||
if ((cell[0] == 0.0) || (cell[1] == 0.0) || (cell[2] == 0.0))
|
||||
return 11;
|
||||
if (input[0] == '#')
|
||||
return 12;
|
||||
if (output[0] == '#')
|
||||
return 13;
|
||||
|
||||
return 0;
|
||||
}
|
||||
int error_checking (const system_info _system_info, const char *input,
|
||||
const char *output);
|
||||
|
||||
|
||||
/**
|
||||
* @fn print_message
|
||||
*/
|
||||
int print_message (const int quiet, FILE *std_output, const int log, FILE *f_log,
|
||||
const int mode, const char *str)
|
||||
/**
|
||||
* @brief function that prints message in log and stdout
|
||||
* @code
|
||||
@ -58,29 +54,18 @@ int print_message (const int quiet, FILE *std_output, const int log, FILE *f_log
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
{
|
||||
if ((quiet != 1) && (std_output != stderr))
|
||||
message (0, mode, str, std_output);
|
||||
if (log == 1)
|
||||
message (1, mode, str, f_log);
|
||||
|
||||
return 0;
|
||||
}
|
||||
int print_message (const int quiet, FILE *std_output, const int log, FILE *f_log,
|
||||
const int mode, const char *str);
|
||||
|
||||
|
||||
/**
|
||||
* @fn set_defaults
|
||||
*/
|
||||
int set_defaults (float *cell, char *input, int *log, int *num_of_mol, char *output,
|
||||
int *quiet, float *rad)
|
||||
/**
|
||||
* @brief function that sets default values of variables
|
||||
* @code
|
||||
* set_defaults (cell, &from, input, &log, &max_depth, &num_of_inter, output, &to,
|
||||
* set_defaults (&_system_info, &from, input, &log, &max_depth, &num_of_inter, output, &to,
|
||||
* &type_inter, &quiet);
|
||||
* @endcode
|
||||
*
|
||||
* @param cell massive of cell size
|
||||
* @param _system_info system information structure
|
||||
* @param input mask of trajectory files
|
||||
* @param log status of log-mode
|
||||
* @param num_of_mol number of molecule
|
||||
@ -90,17 +75,8 @@ int set_defaults (float *cell, char *input, int *log, int *num_of_mol, char *out
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i=0; i<3; i++)
|
||||
cell[i] = 0.0;
|
||||
input[0] = '#';
|
||||
*log = 0;
|
||||
*num_of_mol = 1;
|
||||
output[0] = '#';
|
||||
*quiet = 0;
|
||||
*rad = 6.0;
|
||||
|
||||
return 0;
|
||||
}
|
||||
int set_defaults (system_info *_system_info, char *input, int *log, int *num_of_mol,
|
||||
char *output, int *quiet, float *rad);
|
||||
|
||||
|
||||
#endif /* ADD_MAIN_H */
|
@ -1,77 +1,18 @@
|
||||
/**
|
||||
* @file
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @mainpage mm_envir
|
||||
* @image latex ./logo.png
|
||||
*
|
||||
* @section intro_sec Introduction
|
||||
*
|
||||
* <b>About this program</b>:
|
||||
* <ul>
|
||||
* <li>Program that searchs environment for chosen molecule by geometric criterion
|
||||
* </ul>
|
||||
*
|
||||
* <b>Developer</b>:
|
||||
* <ul>
|
||||
* <li>Evgeniy Alekseev aka arcanis <pre><esalexeev (at) gmail (dot) com></pre>
|
||||
*</ul>
|
||||
* <b>License</b>:
|
||||
* <ul>
|
||||
* <li>GPL
|
||||
* </ul>
|
||||
*
|
||||
* @section How-To-Use How to use
|
||||
* Usage:
|
||||
* <pre>
|
||||
* mm_envir -i INPUT -c X,Y,Z -o OUTPUT [ -n NUM_OF_MOLECULE ] [ -r RADIUS ]
|
||||
* [ -l LOGFILE ] [ -q ] [ -h ]
|
||||
*
|
||||
* Parametrs:
|
||||
* -i - input file name
|
||||
* -c - cell size (float), A
|
||||
* -o - output file name
|
||||
* -n - number of molecule for search (integer). Default is 1
|
||||
* -r - radius of environment (float). Default is 6.0
|
||||
* -l - log enable
|
||||
* -q - quiet enable
|
||||
* -h - show this help and exit
|
||||
* </pre>
|
||||
*
|
||||
* @page Install
|
||||
*
|
||||
* @section Requirements Requirements
|
||||
* The application mm_envir requires the following external stuff:
|
||||
* - cmake >= 2.8
|
||||
* - gcc >= 4.8
|
||||
*
|
||||
* @section How-To How to install
|
||||
*
|
||||
* @subsection Linux Linux
|
||||
* @code
|
||||
* mkdir build && cd build
|
||||
* cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release ../
|
||||
* make
|
||||
* make install
|
||||
* @endcode
|
||||
*
|
||||
* @subsection Windows Windows
|
||||
* @code
|
||||
* create project file using 'cmake'
|
||||
* compile project
|
||||
* @endcode
|
||||
* You may also download compiled executable file for Win_x86.
|
||||
*
|
||||
* @page Changelog
|
||||
* V.1.0.3 (2013-08-30)
|
||||
* <ul>
|
||||
* <li> Bug fixes
|
||||
* </ul>
|
||||
* V.1.0.1 (2013-07-27)
|
||||
* <ul>
|
||||
* <li> initial release
|
||||
* </ul>
|
||||
*/
|
||||
* @file main.c
|
||||
* Source code of envir
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
@ -79,11 +20,13 @@
|
||||
#include <string.h>
|
||||
|
||||
#include "add_main.h"
|
||||
#include "coords.h"
|
||||
#include "envir_search.h"
|
||||
#include "messages.h"
|
||||
#include "print_struct.h"
|
||||
#include "set_center.h"
|
||||
#include <version.h>
|
||||
#include <mathmech/coords.h>
|
||||
#include <mathmech/envir_search.h>
|
||||
#include <mathmech/messages.h>
|
||||
#include <mathmech/print_struct.h>
|
||||
#include <mathmech/set_center.h>
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
@ -102,33 +45,31 @@ int main(int argc, char *argv[])
|
||||
int error, i, *tmp_int;
|
||||
FILE *f_inp, *f_log;
|
||||
|
||||
char *ch_type_atoms, input[256], logfile[256], output[256];
|
||||
float cell[3], *centr_coords, *coords, rad;
|
||||
int *label_mol, log, num_atoms, num_mol, num_needed_mol, num_of_mol,
|
||||
*needed_mol, quiet, *true_label_mol;
|
||||
char input[256], logfile[256], output[256];
|
||||
float *centr_coords, rad;
|
||||
int log, num_needed_mol, num_of_mol, *needed_mol, quiet, *true_label_mol;
|
||||
atom_info *_atom_info;
|
||||
system_info _system_info;
|
||||
|
||||
/* ch_type_atoms massive of char atom types
|
||||
* input input file name
|
||||
/* input input file name
|
||||
* logfile log file name
|
||||
* output output file name
|
||||
*
|
||||
* cell massive of cell size
|
||||
* centr_coords massive of centered coordinates
|
||||
* coords massive of coordinates
|
||||
* rad radius of environment sphere
|
||||
*
|
||||
* label_mol massive of numbers of molecule for atoms
|
||||
* log status of log-mode
|
||||
* num_atoms number of atoms
|
||||
* num_mol number of molecules
|
||||
* num_needed_mol number of needed molecules
|
||||
* num_of_mol number of molecule
|
||||
* needed_mol massive of number of needed molecules
|
||||
* quiet status of quiet-mode
|
||||
* true_label_mol massive of true numbers of molecule for atoms
|
||||
*
|
||||
* _atom_info atom information file
|
||||
* _system_info system information file
|
||||
*/
|
||||
|
||||
set_defaults (cell, input, &log, &num_of_mol, output, &quiet, &rad);
|
||||
set_defaults (&_system_info, input, &log, &num_of_mol, output, &quiet, &rad);
|
||||
|
||||
for (i=1; i<argc; i++)
|
||||
{
|
||||
@ -136,15 +77,14 @@ int main(int argc, char *argv[])
|
||||
{
|
||||
sprintf (tmp_str, " mm_envir\n");
|
||||
sprintf (tmp_str, "%sProgram for search environment for chosen molecule by geometric criterion\n", tmp_str);
|
||||
sprintf (tmp_str, "%sVersion : 1.0.3 License : GPL\n", tmp_str);
|
||||
sprintf (tmp_str, "%sVersion : %s License : Beerware\n", tmp_str, PROJ_VERSION);
|
||||
sprintf (tmp_str, "%s Evgeniy Alekseev aka arcanis\n", tmp_str);
|
||||
sprintf (tmp_str, "%s E-mail : esalexeev@gmail.com\n\n", tmp_str);
|
||||
sprintf (tmp_str, "%sUsage:\n", tmp_str);
|
||||
sprintf (tmp_str, "%smm_envir -i INPUT -c X,Y,Z -o OUTPUT [ -n NUM_OF_MOLECULE ] [ -r RADIUS ]\n", tmp_str);
|
||||
sprintf (tmp_str, "%s [ -l LOGFILE ] [ -q ] [ -h ]\n\n", tmp_str);
|
||||
sprintf (tmp_str, "%smm_envir -i INPUT -o OUTPUT [ -n NUM_OF_MOLECULE ] [ -r RADIUS ]\n", tmp_str);
|
||||
sprintf (tmp_str, "%s [ -l LOGFILE ] [ -q ] [ -h ]\n\n", tmp_str);
|
||||
sprintf (tmp_str, "%sParametrs:\n", tmp_str);
|
||||
sprintf (tmp_str, "%s -i - input file name\n", tmp_str);
|
||||
sprintf (tmp_str, "%s -c - cell size (float), A\n", tmp_str);
|
||||
sprintf (tmp_str, "%s -o - output file name\n", tmp_str);
|
||||
sprintf (tmp_str, "%s -n - number of molecule for search (integer). Default is 1\n", tmp_str);
|
||||
sprintf (tmp_str, "%s -r - radius of environment (float). Default is 6.0\n", tmp_str);
|
||||
@ -160,12 +100,6 @@ int main(int argc, char *argv[])
|
||||
strcpy (input, argv[i+1]);
|
||||
i++;
|
||||
}
|
||||
else if ((argv[i][0] == '-') && (argv[i][1] == 'c') && (argv[i][2] == '\0'))
|
||||
// cell size
|
||||
{
|
||||
sscanf (argv[i+1], "%f,%f,%f", &cell[0], &cell[1], &cell[2]);
|
||||
i++;
|
||||
}
|
||||
else if ((argv[i][0] == '-') && (argv[i][1] == 'o') && (argv[i][2] == '\0'))
|
||||
// output file
|
||||
{
|
||||
@ -210,7 +144,7 @@ int main(int argc, char *argv[])
|
||||
print_message (quiet, stdout, log, f_log, 1, argv[0]);
|
||||
|
||||
// error check
|
||||
error = error_checking (cell, input, output);
|
||||
error = error_checking (_system_info, input, output);
|
||||
if (error != 0)
|
||||
{
|
||||
print_message (quiet, stderr, log, f_log, 17, argv[0]);
|
||||
@ -228,17 +162,13 @@ int main(int argc, char *argv[])
|
||||
print_message (quiet, stderr, log, f_log, 18, input);
|
||||
return 2;
|
||||
}
|
||||
fscanf (f_inp, "%i", &num_atoms);
|
||||
fscanf (f_inp, "%i", &_system_info.num_atoms);
|
||||
fclose (f_inp);
|
||||
ch_type_atoms = (char *) malloc (2 * num_atoms * sizeof (char));
|
||||
coords = (float *) malloc (3 * 8 * num_atoms * sizeof (float));
|
||||
label_mol = (int *) malloc (8 * num_atoms * sizeof (int));
|
||||
tmp_int = (int *) malloc (8 * num_atoms * sizeof (int));
|
||||
true_label_mol = (int *) malloc (num_atoms * sizeof (int));
|
||||
_atom_info = (atom_info *) malloc (8 * _system_info.num_atoms * sizeof (atom_info));
|
||||
tmp_int = (int *) malloc (8 * _system_info.num_atoms * sizeof (int));
|
||||
true_label_mol = (int *) malloc (_system_info.num_atoms * sizeof (int));
|
||||
// error checking
|
||||
if ((ch_type_atoms == NULL) ||
|
||||
(coords == NULL) ||
|
||||
(label_mol == NULL) ||
|
||||
if ((_atom_info == NULL) ||
|
||||
(tmp_int == NULL) ||
|
||||
(true_label_mol == NULL))
|
||||
{
|
||||
@ -247,8 +177,9 @@ int main(int argc, char *argv[])
|
||||
}
|
||||
sprintf (tmp_str, "%6cInput file: '%s';\n%6cOutput file: '%s';\n%6cLog: %i;\n\
|
||||
%6cQuiet: %i;\n%6cCell size: %.4f, %.4f, %.4f;\n%6cSelect molecule: %i;\n\
|
||||
%6cCriterion: %.1f\n", ' ', input, ' ', output, ' ', log, ' ', quiet, ' ', cell[0],
|
||||
cell[1], cell[2], ' ' , num_of_mol, ' ', rad);
|
||||
%6cCriterion: %.1f\n", ' ', input, ' ', output, ' ', log, ' ', quiet, ' ',
|
||||
_system_info.cell[0], _system_info.cell[1], _system_info.cell[2], ' ' , num_of_mol,
|
||||
' ', rad);
|
||||
print_message (quiet, stdout, log, f_log, 5, tmp_str);
|
||||
|
||||
print_message (quiet, stdout, log, f_log, 6, argv[0]);
|
||||
@ -256,14 +187,14 @@ int main(int argc, char *argv[])
|
||||
// reading coordinates
|
||||
print_message (quiet, stdout, log, f_log, 7, input);
|
||||
error = 1;
|
||||
error = reading_coords (1, input, tmp_int[0], tmp_int, cell, &num_mol, &num_atoms,
|
||||
true_label_mol, label_mol, tmp_int, coords, ch_type_atoms);
|
||||
centr_coords = (float *) malloc (3 * 8 * num_mol * sizeof (float));
|
||||
needed_mol = (int *) malloc (num_mol * sizeof (int));
|
||||
error = reading_coords (1, input, tmp_int[0], tmp_int, &_system_info, true_label_mol,
|
||||
_atom_info);
|
||||
centr_coords = (float *) malloc (3 * 8 * _system_info.num_mol * sizeof (float));
|
||||
needed_mol = (int *) malloc (_system_info.num_mol * sizeof (int));
|
||||
if (error == 0)
|
||||
{
|
||||
sprintf (tmp_str, "%6cNumber of molecules: %i; %6cNumber of atoms: %i\n",
|
||||
' ', num_mol, ' ', num_atoms);
|
||||
' ', _system_info.num_mol, ' ', _system_info.num_atoms);
|
||||
print_message (quiet, stdout, log, f_log, 8, tmp_str);
|
||||
}
|
||||
// error checking
|
||||
@ -278,21 +209,21 @@ int main(int argc, char *argv[])
|
||||
if (error == 0)
|
||||
{
|
||||
error = 1;
|
||||
error = set_center (num_atoms, num_mol, label_mol, coords, centr_coords);
|
||||
error = set_center (_system_info, _atom_info, centr_coords);
|
||||
}
|
||||
if (error == 0)
|
||||
{
|
||||
print_message (quiet, stderr, log, f_log, 20, argv[0]);
|
||||
error = 1;
|
||||
error = search_envir (num_of_mol, num_mol, centr_coords, rad, needed_mol,
|
||||
error = search_envir (num_of_mol, _system_info, centr_coords, rad, needed_mol,
|
||||
&num_needed_mol);
|
||||
}
|
||||
if (error == 0)
|
||||
{
|
||||
print_message (quiet, stderr, log, f_log, 21, argv[0]);
|
||||
error = 1;
|
||||
error = print_structure (output, num_needed_mol, needed_mol, num_atoms,
|
||||
label_mol, ch_type_atoms, coords);
|
||||
error = print_structure (output, num_needed_mol, needed_mol, _system_info,
|
||||
_atom_info);
|
||||
}
|
||||
if (error == 0)
|
||||
print_message (quiet, stderr, log, f_log, 12, output);
|
||||
@ -301,10 +232,8 @@ int main(int argc, char *argv[])
|
||||
|
||||
print_message (quiet, stdout, log, f_log, 15, argv[0]);
|
||||
// free memory
|
||||
free (ch_type_atoms);
|
||||
free (_atom_info);
|
||||
free (centr_coords);
|
||||
free (coords);
|
||||
free (label_mol);
|
||||
free (needed_mol);
|
||||
free (tmp_int);
|
||||
free (true_label_mol);
|
||||
@ -314,4 +243,4 @@ int main(int argc, char *argv[])
|
||||
if (log == 1)
|
||||
fclose (f_log);
|
||||
return 0;
|
||||
}
|
||||
}
|
Binary file not shown.
Binary file not shown.
@ -1,3 +0,0 @@
|
||||
Current developers:
|
||||
|
||||
Evgeniy Alekseev aka arcanis <esalexeev (at) gmail (dot) com>
|
@ -1,31 +1,10 @@
|
||||
cmake_minimum_required (VERSION 2.8)
|
||||
|
||||
cmake_policy(SET CMP0003 OLD)
|
||||
cmake_policy(SET CMP0011 NEW)
|
||||
cmake_policy(SET CMP0015 NEW)
|
||||
|
||||
# set project name
|
||||
set (PROJECT mathmech)
|
||||
set (SUBPROJECT mathmech)
|
||||
# set additional cmake file
|
||||
include (${PROJECT}.cmake)
|
||||
|
||||
|
||||
# additional options
|
||||
OPTION (WITH_DEBUG_MODE "Build with debug mode" OFF)
|
||||
|
||||
# set libraries
|
||||
set (LIBRARIES)
|
||||
foreach (LIBRARY ${LIBRARIES})
|
||||
find_library ("${LIBRARY}_FOUND" ${LIBRARY})
|
||||
message (STATUS "Check the ${LIBRARY} is installed: " ${${LIBRARY}_FOUND})
|
||||
if ("${${LIBRARY}_FOUND}" STREQUAL "${LIBRARY}_FOUND-NOTFOUND")
|
||||
message (STATUS "Adding library sources")
|
||||
add_subdirectory (../${LIBRARY} lib/${LIBRARY})
|
||||
endif ()
|
||||
endforeach ()
|
||||
include (${SUBPROJECT}.cmake)
|
||||
|
||||
# additional targets
|
||||
set (TARGETS "")
|
||||
set (HEADERS "")
|
||||
|
||||
add_subdirectory (${PROJECT_SOURCE_DIR})
|
||||
add_subdirectory (${SUBPROJECT_SOURCE_DIR})
|
||||
|
@ -1,341 +0,0 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Library General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) 19yy <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) 19yy name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Library General
|
||||
Public License instead of this License.
|
@ -1,16 +0,0 @@
|
||||
CMakeFlags:
|
||||
-DCMAKE_INSTALL_PREFIX= - install prefix (default is '/usr/local')
|
||||
-DWITH_DEBUG_MODE=1 - compile with flag '-g' (default is disable)
|
||||
-DQWT_INCLUDE_PATH - path to qwt includes
|
||||
-DQWT_LIBRARY_PATH - path to qwt library
|
||||
|
||||
Install for Linux:
|
||||
mkdir build && cd build
|
||||
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release ../
|
||||
make
|
||||
make install
|
||||
Install for Windows:
|
||||
create project file using 'cmake'
|
||||
compile project
|
||||
copy QtCore4.dll, QtGui4.dll, QtOpenGL4.dll, QtSvg4.dll, qwt.dll to directory with mathmech
|
||||
You may also download compiled executable file for Win_x86.
|
@ -1,3 +1 @@
|
||||
Mathematical Molecular Mechanics is GUI for "mm" program pack
|
||||
Version: 1.0.3
|
||||
License: GPL
|
||||
|
@ -1,31 +1,8 @@
|
||||
# set directories
|
||||
set (PROJECT_BINARY_DIR bin)
|
||||
set (PROJECT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||
set (PROJECT_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/include)
|
||||
set (PROJECT_LIB_DIR ${CMAKE_CURRENT_SOURCE_DIR}/lib)
|
||||
set (PROJECT_RESOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/resources)
|
||||
set (PROJECT_TRANSLATION_DIR ${PROJECT_RESOURCE_DIR}/translations)
|
||||
set (SUBPROJECT_BINARY_DIR bin)
|
||||
set (SUBPROJECT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||
set (SUBPROJECT_RESOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/resources)
|
||||
set (SUBPROJECT_TRANSLATION_DIR ${SUBPROJECT_RESOURCE_DIR}/translations)
|
||||
|
||||
# library path
|
||||
link_directories (${PROJECT_LIB_DIR})
|
||||
# executable path
|
||||
set (EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR})
|
||||
|
||||
# verbose
|
||||
set (CMAKE_VERBOSE_MAKEFILE ON)
|
||||
|
||||
# flags
|
||||
if ( WITH_DEBUG_MODE )
|
||||
add_definitions ( -DDEBUG_MODE=1 )
|
||||
endif ()
|
||||
if ( CMAKE_COMPILER_IS_GNUCXX )
|
||||
set (ADD_CXX_FLAGS "-Wall")
|
||||
set (CMAKE_CXX_FLAGS "-O0 ${ADD_CXX_FLAGS}")
|
||||
set (CMAKE_CXX_FLAGS_DEBUG "-g -O0")
|
||||
set (CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG")
|
||||
elseif ( MSVC )
|
||||
set (ADD_CXX_FLAGS "/W4")
|
||||
set (CMAKE_CXX_FLAGS "${ADD_CXX_FLAGS}")
|
||||
else ()
|
||||
message ("Unknown compiler")
|
||||
endif ()
|
||||
set (EXECUTABLE_OUTPUT_PATH ${SUBPROJECT_BINARY_DIR})
|
||||
|
1
mathmech/mathmech/mathmech.desktop
Normal file → Executable file
1
mathmech/mathmech/mathmech.desktop
Normal file → Executable file
@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env xdg-open
|
||||
[Desktop Entry]
|
||||
Name=Mathematical Molecular Mechanics
|
||||
Comment=GUI for mathmech program pack
|
||||
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@ -3,7 +3,7 @@ file (GLOB SOURCES *.cpp)
|
||||
file (GLOB HEADERS *.h)
|
||||
file (GLOB FORMS *.ui)
|
||||
if (CMAKE_SYSTEM_NAME MATCHES Windows)
|
||||
set (SOURCES ${SOURCES} ${PROJECT_RESOURCE_DIR}/res_icon.rc)
|
||||
set (SOURCES ${SOURCES} ${SUBPROJECT_RESOURCE_DIR}/res_icon.rc)
|
||||
endif ()
|
||||
# set library
|
||||
if (CMAKE_COMPILER_IS_GNUCXX)
|
||||
@ -11,22 +11,18 @@ if (CMAKE_COMPILER_IS_GNUCXX)
|
||||
else ()
|
||||
set (LIBRARIES qwt)
|
||||
endif ()
|
||||
set (LANGUAGES
|
||||
eng
|
||||
rus)
|
||||
set (RESOURCES ${PROJECT_RESOURCE_DIR}/resources.qrc)
|
||||
set (LANGUAGES eng
|
||||
rus)
|
||||
set (RESOURCES ${SUBPROJECT_RESOURCE_DIR}/resources.qrc)
|
||||
|
||||
message (STATUS "SOURCES: ${SOURCES}")
|
||||
message (STATUS "HEADERS: ${HEADERS}")
|
||||
message (STATUS "FORMS: ${FORMS}")
|
||||
message (STATUS "${SUBPROJECT} SOURCES: ${SOURCES}")
|
||||
message (STATUS "${SUBPROJECT} HEADERS: ${HEADERS}")
|
||||
message (STATUS "${SUBPROJECT} FORMS: ${FORMS}")
|
||||
|
||||
|
||||
# compile
|
||||
project (${PROJECT})
|
||||
# include_path
|
||||
link_directories (${QWT_LIBRARY_PATH})
|
||||
include_directories (${PROJECT_INCLUDE_DIR}/${PROJECT}
|
||||
${PROJECT_SOURCE_DIR}
|
||||
include_directories (${SUBPROJECT_SOURCE_DIR}
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${QWT_INCLUDE_PATH})
|
||||
|
||||
@ -36,39 +32,28 @@ qt4_add_resources (QRC_SOURCES ${RESOURCES})
|
||||
qt4_wrap_cpp (MOC_SOURCES ${HEADERS})
|
||||
qt4_wrap_ui (UI_HEADERS ${FORMS})
|
||||
foreach (LANGUAGE ${LANGUAGES})
|
||||
set (TS ${PROJECT_TRANSLATION_DIR}/${LANGUAGE}.ts)
|
||||
set (QM ${PROJECT_TRANSLATION_DIR}/${LANGUAGE}.qm)
|
||||
set (TS ${SUBPROJECT_TRANSLATION_DIR}/${LANGUAGE}.ts)
|
||||
set (QM ${SUBPROJECT_TRANSLATION_DIR}/${LANGUAGE}.qm)
|
||||
set (TRANSLATIONS ${TRANSLATIONS} ${TS})
|
||||
set (TRANSLATIONS_BINARY ${TRANSLATIONS_BINARY} ${QM})
|
||||
add_custom_command (
|
||||
OUTPUT ${QM}
|
||||
COMMAND ${QT_LRELEASE_EXECUTABLE} ${TS}
|
||||
MAIN_DEPENDENCY ${TS})
|
||||
add_custom_command (OUTPUT ${QM} COMMAND ${QT_LRELEASE_EXECUTABLE} ${TS} MAIN_DEPENDENCY ${TS})
|
||||
endforeach ()
|
||||
add_custom_target (
|
||||
translations
|
||||
COMMAND ${QT_LUPDATE_EXECUTABLE} ${HEADERS} ${SOURCES} ${UI_HEADERS} -ts ${TRANSLATIONS})
|
||||
add_custom_command (
|
||||
TARGET translations
|
||||
COMMAND ${QT_LRELEASE_EXECUTABLE} ${TRANSLATIONS})
|
||||
message (STATUS "TRANSLATIONS: ${TRANSLATIONS_BINARY}")
|
||||
add_custom_target (translations COMMAND ${QT_LUPDATE_EXECUTABLE} ${HEADERS} ${SOURCES} ${UI_HEADERS} -ts ${TRANSLATIONS})
|
||||
add_custom_command (TARGET translations COMMAND ${QT_LRELEASE_EXECUTABLE} ${TRANSLATIONS})
|
||||
message (STATUS "${SUBPROJECT} TRANSLATIONS: ${TRANSLATIONS_BINARY}")
|
||||
|
||||
source_group ("Header Files" FILES ${HEADERS})
|
||||
source_group ("Source Files" FILES ${SOURCES})
|
||||
source_group ("Generated Files" FILES ${MOC_SOURCES})
|
||||
source_group ("Resource Files" FILES ${QRC_SOURCES})
|
||||
|
||||
add_executable (${PROJECT} WIN32 ${UI_HEADERS} ${HEADERS} ${SOURCES} ${MOC_SOURCES} ${QRC_SOURCES} ${TRANSLATIONS})
|
||||
|
||||
target_link_libraries (${PROJECT} ${LIBRARIES} ${QT_LIBRARIES} ${QT_QTMAIN_LIBRARY})
|
||||
add_executable (${SUBPROJECT} WIN32 ${UI_HEADERS} ${HEADERS} ${SOURCES} ${MOC_SOURCES} ${QRC_SOURCES} ${TRANSLATIONS})
|
||||
target_link_libraries (${SUBPROJECT} ${LIBRARIES} ${QT_LIBRARIES} ${QT_QTMAIN_LIBRARY})
|
||||
|
||||
# install properties
|
||||
install (TARGETS ${PROJECT} DESTINATION bin)
|
||||
install (TARGETS ${SUBPROJECT} DESTINATION bin)
|
||||
if (CMAKE_SYSTEM_NAME MATCHES Linux)
|
||||
install (FILES ../mathmech.desktop
|
||||
DESTINATION share/applications/)
|
||||
install (FILES ../mathmech-logo.png
|
||||
DESTINATION share/pixmaps/)
|
||||
install (FILES ../mathmech.png
|
||||
DESTINATION share/icons/hicolor/32x32/apps/)
|
||||
install (FILES ../mathmech.desktop DESTINATION share/applications/)
|
||||
install (FILES ../mathmech-logo.png DESTINATION share/pixmaps/)
|
||||
install (FILES ../mathmech.png DESTINATION share/icons/hicolor/32x32/apps/)
|
||||
endif ()
|
||||
|
@ -1,6 +1,6 @@
|
||||
#############################################################################
|
||||
# Makefile for building: mathmech
|
||||
# Generated by qmake (2.01a) (Qt 4.8.5) on: ?? ??? 26 15:52:26 2013
|
||||
# Generated by qmake (2.01a) (Qt 4.8.5) on: ?? ??? 3 02:36:06 2013
|
||||
# Project: mathmech.pro
|
||||
# Template: app
|
||||
# Command: /usr/bin/qmake-qt4 -o Makefile mathmech.pro
|
||||
@ -54,7 +54,8 @@ SOURCES = main.cpp \
|
||||
aboutwindow.cpp \
|
||||
statgengraphwindow.cpp \
|
||||
settingswindow.cpp \
|
||||
aglallwindow.cpp moc_mainwindow.cpp \
|
||||
aglallwindow.cpp \
|
||||
helpwindow.cpp moc_mainwindow.cpp \
|
||||
moc_errorwindow.cpp \
|
||||
moc_clear_items.cpp \
|
||||
moc_start_events.cpp \
|
||||
@ -64,7 +65,8 @@ SOURCES = main.cpp \
|
||||
moc_aboutwindow.cpp \
|
||||
moc_statgengraphwindow.cpp \
|
||||
moc_settingswindow.cpp \
|
||||
moc_aglallwindow.cpp
|
||||
moc_aglallwindow.cpp \
|
||||
moc_helpwindow.cpp
|
||||
OBJECTS = main.o \
|
||||
mainwindow.o \
|
||||
errorwindow.o \
|
||||
@ -77,6 +79,7 @@ OBJECTS = main.o \
|
||||
statgengraphwindow.o \
|
||||
settingswindow.o \
|
||||
aglallwindow.o \
|
||||
helpwindow.o \
|
||||
moc_mainwindow.o \
|
||||
moc_errorwindow.o \
|
||||
moc_clear_items.o \
|
||||
@ -87,7 +90,8 @@ OBJECTS = main.o \
|
||||
moc_aboutwindow.o \
|
||||
moc_statgengraphwindow.o \
|
||||
moc_settingswindow.o \
|
||||
moc_aglallwindow.o
|
||||
moc_aglallwindow.o \
|
||||
moc_helpwindow.o
|
||||
DIST = /usr/share/qt4/mkspecs/common/unix.conf \
|
||||
/usr/share/qt4/mkspecs/common/linux.conf \
|
||||
/usr/share/qt4/mkspecs/common/gcc-base.conf \
|
||||
@ -146,7 +150,7 @@ first: all
|
||||
|
||||
all: Makefile $(TARGET)
|
||||
|
||||
$(TARGET): ui_mainwindow.h ui_errorwindow.h ui_atomtypeswindow.h ui_agglwindow.h ui_aboutwindow.h ui_statgengraphwindow.h ui_settingswindow.h ui_aglallwindow.h $(OBJECTS)
|
||||
$(TARGET): ui_mainwindow.h ui_errorwindow.h ui_atomtypeswindow.h ui_agglwindow.h ui_aboutwindow.h ui_statgengraphwindow.h ui_settingswindow.h ui_aglallwindow.h ui_helpwindow.h $(OBJECTS)
|
||||
$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)
|
||||
|
||||
Makefile: mathmech.pro /usr/share/qt4/mkspecs/linux-g++/qmake.conf /usr/share/qt4/mkspecs/common/unix.conf \
|
||||
@ -219,7 +223,7 @@ qmake: FORCE
|
||||
|
||||
dist:
|
||||
@$(CHK_DIR_EXISTS) .tmp/mathmech1.0.0 || $(MKDIR) .tmp/mathmech1.0.0
|
||||
$(COPY_FILE) --parents $(SOURCES) $(DIST) .tmp/mathmech1.0.0/ && $(COPY_FILE) --parents mainwindow.h errorwindow.h clear_items.h start_events.h update_fields.h atomtypeswindow.h agglwindow.h aboutwindow.h statgengraphwindow.h settingswindow.h aglallwindow.h .tmp/mathmech1.0.0/ && $(COPY_FILE) --parents main.cpp mainwindow.cpp errorwindow.cpp clear_items.cpp start_events.cpp update_fields.cpp atomtypeswindow.cpp agglwindow.cpp aboutwindow.cpp statgengraphwindow.cpp settingswindow.cpp aglallwindow.cpp .tmp/mathmech1.0.0/ && $(COPY_FILE) --parents mainwindow.ui errorwindow.ui atomtypeswindow.ui agglwindow.ui aboutwindow.ui statgengraphwindow.ui settingswindow.ui aglallwindow.ui .tmp/mathmech1.0.0/ && $(COPY_FILE) --parents rus.ts eng.ts .tmp/mathmech1.0.0/ && (cd `dirname .tmp/mathmech1.0.0` && $(TAR) mathmech1.0.0.tar mathmech1.0.0 && $(COMPRESS) mathmech1.0.0.tar) && $(MOVE) `dirname .tmp/mathmech1.0.0`/mathmech1.0.0.tar.gz . && $(DEL_FILE) -r .tmp/mathmech1.0.0
|
||||
$(COPY_FILE) --parents $(SOURCES) $(DIST) .tmp/mathmech1.0.0/ && $(COPY_FILE) --parents mainwindow.h errorwindow.h clear_items.h start_events.h update_fields.h atomtypeswindow.h agglwindow.h aboutwindow.h statgengraphwindow.h settingswindow.h aglallwindow.h helpwindow.h .tmp/mathmech1.0.0/ && $(COPY_FILE) --parents main.cpp mainwindow.cpp errorwindow.cpp clear_items.cpp start_events.cpp update_fields.cpp atomtypeswindow.cpp agglwindow.cpp aboutwindow.cpp statgengraphwindow.cpp settingswindow.cpp aglallwindow.cpp helpwindow.cpp .tmp/mathmech1.0.0/ && $(COPY_FILE) --parents mainwindow.ui errorwindow.ui atomtypeswindow.ui agglwindow.ui aboutwindow.ui statgengraphwindow.ui settingswindow.ui aglallwindow.ui helpwindow.ui .tmp/mathmech1.0.0/ && $(COPY_FILE) --parents rus.ts eng.ts .tmp/mathmech1.0.0/ && (cd `dirname .tmp/mathmech1.0.0` && $(TAR) mathmech1.0.0.tar mathmech1.0.0 && $(COMPRESS) mathmech1.0.0.tar) && $(MOVE) `dirname .tmp/mathmech1.0.0`/mathmech1.0.0.tar.gz . && $(DEL_FILE) -r .tmp/mathmech1.0.0
|
||||
|
||||
|
||||
clean:compiler_clean
|
||||
@ -240,9 +244,9 @@ mocclean: compiler_moc_header_clean compiler_moc_source_clean
|
||||
|
||||
mocables: compiler_moc_header_make_all compiler_moc_source_make_all
|
||||
|
||||
compiler_moc_header_make_all: moc_mainwindow.cpp moc_errorwindow.cpp moc_clear_items.cpp moc_start_events.cpp moc_update_fields.cpp moc_atomtypeswindow.cpp moc_agglwindow.cpp moc_aboutwindow.cpp moc_statgengraphwindow.cpp moc_settingswindow.cpp moc_aglallwindow.cpp
|
||||
compiler_moc_header_make_all: moc_mainwindow.cpp moc_errorwindow.cpp moc_clear_items.cpp moc_start_events.cpp moc_update_fields.cpp moc_atomtypeswindow.cpp moc_agglwindow.cpp moc_aboutwindow.cpp moc_statgengraphwindow.cpp moc_settingswindow.cpp moc_aglallwindow.cpp moc_helpwindow.cpp
|
||||
compiler_moc_header_clean:
|
||||
-$(DEL_FILE) moc_mainwindow.cpp moc_errorwindow.cpp moc_clear_items.cpp moc_start_events.cpp moc_update_fields.cpp moc_atomtypeswindow.cpp moc_agglwindow.cpp moc_aboutwindow.cpp moc_statgengraphwindow.cpp moc_settingswindow.cpp moc_aglallwindow.cpp
|
||||
-$(DEL_FILE) moc_mainwindow.cpp moc_errorwindow.cpp moc_clear_items.cpp moc_start_events.cpp moc_update_fields.cpp moc_atomtypeswindow.cpp moc_agglwindow.cpp moc_aboutwindow.cpp moc_statgengraphwindow.cpp moc_settingswindow.cpp moc_aglallwindow.cpp moc_helpwindow.cpp
|
||||
moc_mainwindow.cpp: mainwindow.h
|
||||
/usr/lib/qt4/bin/moc $(DEFINES) $(INCPATH) mainwindow.h -o moc_mainwindow.cpp
|
||||
|
||||
@ -276,6 +280,9 @@ moc_settingswindow.cpp: settingswindow.h
|
||||
moc_aglallwindow.cpp: aglallwindow.h
|
||||
/usr/lib/qt4/bin/moc $(DEFINES) $(INCPATH) aglallwindow.h -o moc_aglallwindow.cpp
|
||||
|
||||
moc_helpwindow.cpp: helpwindow.h
|
||||
/usr/lib/qt4/bin/moc $(DEFINES) $(INCPATH) helpwindow.h -o moc_helpwindow.cpp
|
||||
|
||||
compiler_rcc_make_all:
|
||||
compiler_rcc_clean:
|
||||
compiler_image_collection_make_all: qmake_image_collection.cpp
|
||||
@ -283,9 +290,9 @@ compiler_image_collection_clean:
|
||||
-$(DEL_FILE) qmake_image_collection.cpp
|
||||
compiler_moc_source_make_all:
|
||||
compiler_moc_source_clean:
|
||||
compiler_uic_make_all: ui_mainwindow.h ui_errorwindow.h ui_atomtypeswindow.h ui_agglwindow.h ui_aboutwindow.h ui_statgengraphwindow.h ui_settingswindow.h ui_aglallwindow.h
|
||||
compiler_uic_make_all: ui_mainwindow.h ui_errorwindow.h ui_atomtypeswindow.h ui_agglwindow.h ui_aboutwindow.h ui_statgengraphwindow.h ui_settingswindow.h ui_aglallwindow.h ui_helpwindow.h
|
||||
compiler_uic_clean:
|
||||
-$(DEL_FILE) ui_mainwindow.h ui_errorwindow.h ui_atomtypeswindow.h ui_agglwindow.h ui_aboutwindow.h ui_statgengraphwindow.h ui_settingswindow.h ui_aglallwindow.h
|
||||
-$(DEL_FILE) ui_mainwindow.h ui_errorwindow.h ui_atomtypeswindow.h ui_agglwindow.h ui_aboutwindow.h ui_statgengraphwindow.h ui_settingswindow.h ui_aglallwindow.h ui_helpwindow.h
|
||||
ui_mainwindow.h: mainwindow.ui
|
||||
/usr/lib/qt4/bin/uic mainwindow.ui -o ui_mainwindow.h
|
||||
|
||||
@ -310,6 +317,9 @@ ui_settingswindow.h: settingswindow.ui
|
||||
ui_aglallwindow.h: aglallwindow.ui
|
||||
/usr/lib/qt4/bin/uic aglallwindow.ui -o ui_aglallwindow.h
|
||||
|
||||
ui_helpwindow.h: helpwindow.ui
|
||||
/usr/lib/qt4/bin/uic helpwindow.ui -o ui_helpwindow.h
|
||||
|
||||
compiler_yacc_decl_make_all:
|
||||
compiler_yacc_decl_clean:
|
||||
compiler_yacc_impl_make_all:
|
||||
@ -327,10 +337,11 @@ mainwindow.o: mainwindow.cpp aboutwindow.h \
|
||||
agglwindow.h \
|
||||
aglallwindow.h \
|
||||
atomtypeswindow.h \
|
||||
helpwindow.h \
|
||||
settingswindow.h \
|
||||
statgengraphwindow.h \
|
||||
clear_items.h \
|
||||
start_events.h \
|
||||
statgengraphwindow.h \
|
||||
update_fields.h \
|
||||
mainwindow.h \
|
||||
ui_mainwindow.h
|
||||
@ -386,6 +397,10 @@ aglallwindow.o: aglallwindow.cpp errorwindow.h \
|
||||
ui_aglallwindow.h
|
||||
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o aglallwindow.o aglallwindow.cpp
|
||||
|
||||
helpwindow.o: helpwindow.cpp helpwindow.h \
|
||||
ui_helpwindow.h
|
||||
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o helpwindow.o helpwindow.cpp
|
||||
|
||||
moc_mainwindow.o: moc_mainwindow.cpp
|
||||
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_mainwindow.o moc_mainwindow.cpp
|
||||
|
||||
@ -419,6 +434,9 @@ moc_settingswindow.o: moc_settingswindow.cpp
|
||||
moc_aglallwindow.o: moc_aglallwindow.cpp
|
||||
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_aglallwindow.o moc_aglallwindow.cpp
|
||||
|
||||
moc_helpwindow.o: moc_helpwindow.cpp
|
||||
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_helpwindow.o moc_helpwindow.cpp
|
||||
|
||||
####### Install
|
||||
|
||||
install: FORCE
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file aboutwindow.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <QKeyEvent>
|
||||
|
||||
#include "aboutwindow.h"
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file aboutwindow.h
|
||||
* Header of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef ABOUTWINDOW_H
|
||||
#define ABOUTWINDOW_H
|
||||
|
||||
|
@ -25,7 +25,7 @@ p, li { white-space: pre-wrap; }
|
||||
<p align="center" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Mathematical Molecular Mechanics</span></p>
|
||||
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Version:</span> 1.0.0</p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">License:</span> GPL</p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">License:</span> Beerware</p>
|
||||
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">Author:</span> Evgeniy Alekseev</p>
|
||||
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">E-mail:</span> esalexeev@gmail.com</p>
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file agglwindow.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <QDir>
|
||||
#include <QFileDialog>
|
||||
#include <QKeyEvent>
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file agglwindow.h
|
||||
* Header of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef AGGLWINDOW_H
|
||||
#define AGGLWINDOW_H
|
||||
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file aglallwindow.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <QDir>
|
||||
#include <QFileDialog>
|
||||
#include <QKeyEvent>
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file aglallwindow.h
|
||||
* Header of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef AGLALLWINDOW_H
|
||||
#define AGLALLWINDOW_H
|
||||
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file atomtypeswindow.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <QDir>
|
||||
#include <QFileDialog>
|
||||
#include <QKeyEvent>
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file atomtypeswindow.h
|
||||
* Header of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef ATOMTYPESWINDOW_H
|
||||
#define ATOMTYPESWINDOW_H
|
||||
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file clear_items.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include "clear_items.h"
|
||||
|
||||
#include "mainwindow.h"
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file clear_items.h
|
||||
* Header of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef CLEAR_ITEMS_H
|
||||
#define CLEAR_ITEMS_H
|
||||
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file errorwindow.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include "errorwindow.h"
|
||||
#include "ui_errorwindow.h"
|
||||
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file errorwindow.h
|
||||
* Header of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef ERRORWINDOW_H
|
||||
#define ERRORWINDOW_H
|
||||
|
||||
|
84
mathmech/mathmech/src/helpwindow.cpp
Normal file
84
mathmech/mathmech/src/helpwindow.cpp
Normal file
@ -0,0 +1,84 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file helpwindow.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <QDir>
|
||||
#include <QFileDialog>
|
||||
#include <QKeyEvent>
|
||||
#include <QTextStream>
|
||||
|
||||
#include "errorwindow.h"
|
||||
|
||||
#include "helpwindow.h"
|
||||
#include "ui_helpwindow.h"
|
||||
|
||||
HelpWindow::HelpWindow(QWidget *parent) :
|
||||
QMainWindow(parent),
|
||||
ui(new Ui::HelpWindow)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
}
|
||||
|
||||
HelpWindow::~HelpWindow()
|
||||
{
|
||||
delete ui;
|
||||
}
|
||||
|
||||
// ESC press event
|
||||
void HelpWindow::keyPressEvent(QKeyEvent *pressedKey)
|
||||
{
|
||||
if (pressedKey->key() == Qt::Key_Escape)
|
||||
close();
|
||||
}
|
||||
|
||||
void HelpWindow::on_pushButton_save_clicked()
|
||||
{
|
||||
errorwin = new ErrorWindow(this);
|
||||
|
||||
QString filename = QFileDialog::getSaveFileName(
|
||||
this,
|
||||
tr("Save file as"),
|
||||
QDir::currentPath(),
|
||||
tr("html files (*.html);;All files (*.*)"));
|
||||
if (filename.isEmpty())
|
||||
return;
|
||||
filename = QFileInfo(filename).absoluteFilePath();
|
||||
QFile f_out(filename);
|
||||
if (!f_out.open(QIODevice::WriteOnly | QIODevice::Text))
|
||||
{
|
||||
errorwin->set_message(9);
|
||||
errorwin->show();
|
||||
return;
|
||||
}
|
||||
QTextStream out(&f_out);
|
||||
QString text = QString("");
|
||||
int page = ui->toolBox->currentIndex();
|
||||
if (page == 0)
|
||||
text = ui->textBrowser_trj->toHtml();
|
||||
else if (page == 1)
|
||||
text = ui->textBrowser_statgen->toHtml();
|
||||
else if (page == 2)
|
||||
text = ui->textBrowser_envir->toHtml();
|
||||
else if (page == 3)
|
||||
text = ui->textBrowser_radf->toHtml();
|
||||
else if (page == 4)
|
||||
text = ui->textBrowser_agl->toHtml();
|
||||
else if (page == 5)
|
||||
text = ui->textBrowser_trj2pdb->toHtml();
|
||||
out << text;
|
||||
f_out.close();
|
||||
|
||||
delete errorwin;
|
||||
}
|
47
mathmech/mathmech/src/helpwindow.h
Normal file
47
mathmech/mathmech/src/helpwindow.h
Normal file
@ -0,0 +1,47 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file helpwindow.h
|
||||
* Header of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef HELPWINDOW_H
|
||||
#define HELPWINDOW_H
|
||||
|
||||
#include <QMainWindow>
|
||||
|
||||
class ErrorWindow;
|
||||
|
||||
namespace Ui {
|
||||
class HelpWindow;
|
||||
}
|
||||
|
||||
class HelpWindow : public QMainWindow
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit HelpWindow(QWidget *parent = 0);
|
||||
~HelpWindow();
|
||||
|
||||
private slots:
|
||||
void on_pushButton_save_clicked();
|
||||
|
||||
private:
|
||||
Ui::HelpWindow *ui;
|
||||
ErrorWindow *errorwin;
|
||||
|
||||
// ESC pressed event
|
||||
void keyPressEvent(QKeyEvent *pressedKey);
|
||||
};
|
||||
|
||||
#endif /* HELPWINDOW_H */
|
416
mathmech/mathmech/src/helpwindow.ui
Normal file
416
mathmech/mathmech/src/helpwindow.ui
Normal file
@ -0,0 +1,416 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ui version="4.0">
|
||||
<class>HelpWindow</class>
|
||||
<widget class="QMainWindow" name="HelpWindow">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>598</width>
|
||||
<height>456</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Help</string>
|
||||
</property>
|
||||
<widget class="QWidget" name="centralwidget">
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="0" column="0">
|
||||
<widget class="QToolBox" name="toolBox">
|
||||
<property name="currentIndex">
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="page_trj">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>580</width>
|
||||
<height>233</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Help about trj</string>
|
||||
</property>
|
||||
<attribute name="label">
|
||||
<string>trj</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout_3">
|
||||
<item row="0" column="0">
|
||||
<widget class="QTextBrowser" name="textBrowser_trj">
|
||||
<property name="html">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">trj</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Program that generates trajectory files in special format from input trajectory.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Usage</span><br />mm_trj -i FILE -t TYPE -s NUMBER -a FILE -o MASK [ -tt NUMBER ] [ -l FILE ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Parametrs</span><br />-i FILE – input trajectory file<br />-t TYPE – trajectory type. Supported formats: gmx, puma<br />-s NUMBER – number of trajectory steps<br />-a FILE – file with atom types<br />-o MASK – mask of output trajectory files<br />-tt NUMBER – maximum number of different atom types. Default is 1024<br />-l FILE – print log to specified file<br />-q – do not print messages to STDOUT<br />-h – show this help and exit</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">File formats</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Trajectory files (*.[0-9])</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Number of atoms is shown in the title.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Trajectory snapshot (enumeration of all atoms in system). Format<br />00001 СА 1234.000000 1234.000000 1234.000000 01 0001<br />The sequence number of an atom (5 characters), space, character atom type (2 characters), 2 spaces, X coordinate (11 characters, 6 decimal part), Y coordinate (11 characters, 6 decimal part), Z coordinate (11 characters, 6 decimal part), 4 spaces, numerical atom type (2 characters), space, number of molecule (4 characters).</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Atom types file (*.types)</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The number of different molecules (NUMTYPES=1) is shown in the title.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The molecules enumeration block. Variables are the number of molecules (NUMMOL=1), the number of atoms (NUMAT=1).<br />The atoms enumeration block. Format<br />CA=1<br />Character atom type (2 characters), equal sign, numerical atom type.</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Operation of the application</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading titles of source files, setting values of initial variables.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Step by step reading of source files, print results to the specified output file.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Working with GUI</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select Menu -&gt; File creator -&gt; Atom types file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set atom types. To add a new molecule you need select &quot;Add new molecule&quot; from the drop down list. To change the number of molecules you need change the corresponding numeric value. To add a new atom you need enter 2 character to the special field, set numerical atom type and press &quot;Add&quot;. After this the atom will appear in the special window. To remove an atom you need select the desired atom in the special window and press &quot;Remove&quot;.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Create the atom types file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the tab &quot;Generate trajectory&quot;. Set the work directory.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the input trajectory file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select the trajectory type from the drop down list, set the number of trajectory steps.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the atom types file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the mask of output files.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the maximum number of different atom types and the log file if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Run application.</li></ol></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="page_statgen">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>98</width>
|
||||
<height>88</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Help about statgen</string>
|
||||
</property>
|
||||
<attribute name="label">
|
||||
<string>statgen</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout_4">
|
||||
<item row="0" column="0">
|
||||
<widget class="QTextBrowser" name="textBrowser_statgen">
|
||||
<property name="html">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">statgen</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Program that analyzes molecular dynamics trajectories using topological analysis.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Usage</span><br />mm_statgen -i MASK -s NUMBER,NUMBER -c X,Y,Z -a FORMAT -r FORMAT -o FILE [ -g NUMBER ] [ -l FILE ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Parametrs</span><br />-i MASK – mask of trajectory files<br />-s NUMBER,NUMBER – first and last trajectory steps<br />-c X,Y,Z – cell size, A<br />-a FORMAT – numerical atom types. Maximum number of different atom types is 4. Types are comma separated<br />-r FORMAT – criteria, A. This flag can be used multiple times. Different interactions are comma separated. Type interaction, colon character, criterion. For example &quot;0-0:2.4,0-1:3.0&quot; means set 0-0 interaction as &lt;2.4 А and 0-1 interaction as &lt;3.0 A<br />-o FILE – output file<br />-g NUMBER – chech graph isomorphism. NUMBER is a maximum depth for search cycles (&gt;= 3)<br />-l FILE – print log to specified file<br />-q – do not print messages to STDOUT<br />-h – show this help and exit</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">File formats</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Output file (*.dat)</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Program name and version are shown in the title. For example, &quot;statgen ::: V.1.1.0&quot;. Blank line.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The configuration block &quot;CONFIGURATION ... END&quot;. Print log (LOG=1), do not print messages to STDOUT (QUIET=1), mask of trajectory files (MASK=mask), first (FIRST=1) and last (LAST=1) trajectory steps, sell size (CELL=1.0000,2.0000,3.0000), atom types (ATOMS=1,2,3,4), interactions (INTERACTION=format), maximum depth for check cycle number (DEPTH=0, 0 - do not check graph isomorphism). Blank line.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The enumeration of statistics on individual files.<br />File name (FILE=mask.001), the statistic block for file &quot;STATISTIC ... -----------------&quot;. Table layout (2 rows) follows after specifying the block. The table format<br /> 0000001 0000001 <br />Space, agglomerate size (7 characters), space, number of agglomerates of this size in the file (7 characters).<br />The enumeration of agglomerates in the file. Agglomerate title (AGL=2=1.3.4.) (1 – number of molecules in the agglomerate, 1.3.4. – agglomerate class, if verification of isomorphism is specified). The enumeration of molecules in the agglomerate. (0000001=2,3,4,5,) (1 – number of molecule (7 characters), equal sign, the enumeration of connected molecules separated by commas).</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The summary statistic block &quot;SUMMARY STATISTIC … ------------------------------------------------&quot;. Table layout (2 rows) follows after specifying the block. The table format<br /> 0000001 0000002 000003.00 004.00000 0005.00000<br />Space, agglomerate size (7 characters), space, total number of agglomerates of this size (7 characters), space, average concentration of agglomerates of this size (9 characters, 2 decimal part), space, probability of finding molecules in agglomerates of this size (9 characters, 5 decimal part), space, probability of finding molecules in agglomerates of this size multiplied by the size (10 characters, 5 decimal part).</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Summary statistic of agglomerates on classes (if verification of isomorphism is specified). The proportion of linear (LINEAR=0.10000) and cyclic (CYCLE=0.10000) agglomerates, blank line, the proportion of not branched (NOT BRANCHED=0.10000) and branched (BRANCHED=0.10000) agglomerates, blank line, the proportion of found cycles of the specified size (CYCLE_03=0.10000).</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Operation of the application</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading titles of source files, setting values of initial variables.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Step by step reading of source files, settings values of variables.<br />Search for interactions that satisfy the specified criteria.<br />The analysis of all connections and specifying to the two molecules that connected, if the conditions are satisfied at least one of these criteria.<br />Adding molecules to agglomerates according to the obtained connectivity matrix.<br />Print agglomerates to the file, adding the summary statistics.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Print the summary statistic to the file.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Working with GUI</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the tab &quot;Agglomeration&quot;. Set the work directory.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the mask of trajectory files.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the first and the last trajectory steps.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the cell size, A.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set needed atoms.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set interactions. Select type of interaction from the drop down list, change its criterion and press &quot;Save&quot;. Press &quot;Add&quot; after ending of edition. After this the interaction will appear in the special window. To remove an interaction you need select the desired interaction in the special window and press &quot;Remove&quot;.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the maximum depth for search cycles, the log file and the graph generate if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For the variation of geometric criteria you need specify the criteria step changes and the number of steps.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Run application.</li></ol></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="page_envir">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>98</width>
|
||||
<height>88</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Help about envir</string>
|
||||
</property>
|
||||
<attribute name="label">
|
||||
<string>envir</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout_5">
|
||||
<item row="0" column="0">
|
||||
<widget class="QTextBrowser" name="textBrowser_envir">
|
||||
<property name="html">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">envir</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Program that searchs environment for chosen molecule by geometric criterion.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Usage</span><br />mm_envir -i FILE -c X,Y,Z -o FILE [ -n NUMBER ] [ -r NUMBER ] [ -l FILE ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Parametrs</span><br />-i FILE – input trajectory file<br />-c X,Y,Z – cell size, A<br />-o FILE – output PDB file<br />-n NUMBER – number of molecule for search. Default is 1<br />-r NUMBER – radius of environment. Default is 6.0<br />-l FILE – print log to specified file<br />-q – do not print messages to STDOUT<br />-h – show this help and exit</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">File formats</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Trajectory file (*.pdb)</span></p>
|
||||
<p align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://www.wwpdb.org/documentation/format33/sect9.html"><span style=" text-decoration: underline; color:#0000ff;">http://www.wwpdb.org/documentation/format33/sect9.html</span></a></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Operation of the application</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading titles of source files, setting values of initial variables.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading of source file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Search for the environment.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Print the environment to the file.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Working with GUI</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the tab &quot;Environment&quot;. Set the work directory.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the input trajectory file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the cell size, A.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output PDB file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the number of molecule for search and the radius of environment.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the log file if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Run application.</li></ol></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="page_radf">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>98</width>
|
||||
<height>88</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Help about radf</string>
|
||||
</property>
|
||||
<attribute name="label">
|
||||
<string>radf</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout_6">
|
||||
<item row="0" column="0">
|
||||
<widget class="QTextBrowser" name="textBrowser_radf">
|
||||
<property name="html">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">radf</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Program that calculates radial distribution function (RDF) or radial-angles distribution function (RADF).</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Usage</span><br />mm_radf -i MASK -s NUMBER,NUMBER -c X,Y,Z -at FORMAT -o FILE [ -r NUMBER,NUMBER ] [ -rs NUMBER ] [ -a NUMBER,NUMBER ] [ -as NUMBER ] [ -m ] [ -l FILE ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Parametrs</span><br />-i MASK – mask of trajectory files<br />-s NUMBER,NUMBER – first and last trajectory steps<br />-c X,Y,Z – cell size, A<br />-at FORMAT – numerical atom types between which the function is calculated. Format is &quot;1-2&quot; or &quot;1,2,3-4,5,6&quot; (automatically enable calculation of radial distribution function between centers of mass)<br />-o FILE – output file<br />-r NUMBER,NUMBER – radial criteria, A. Default is 2.0 and 15.0<br />-rs NUMBER – radius change step, A. Default is 0.2<br />-a NUMBER,NUMBER – angular criteria, deg. Default is 0.0 and 90.0<br />-as NUMBER – angle change step, deg. This option will enable calculation of radial-angles distribution function<br />-as – enable matrix output<br />-l FILE – print log to specified file<br />-q – do not print messages to STDOUT<br />-h – show this help and exit</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">File formats</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Output file (*.dat)</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Program name and version are shown in the title. For example, &quot;radf ::: V.1.1.0&quot;. Blank line.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The configuration block &quot;CONFIGURATION ... END&quot;. Print log (LOG=1), do not print messages to STDOUT (QUIET=1), matrix output (MATRIX=1), mask of trajectory files (MASK=mask), first (FIRST=1) and last (LAST=1) trajectory steps, sell size (CELL=1.0000,2.0000,3.0000), mode (MODE=0) (0 – radial distribution function, 1 – radial distribution function between centers of mass, 2 – radial-angles distribution function), radial criteria (R_MIN=0.100) (R_MAX=0.100) (R_STEP=0.100), angular criteria for radial-angles distribution function (ANG_MIN=0.10) (ANG_MAX=0.10) (ANG_STEP=0.10), atom types (ATOM=1-2) or (ATOM=1,2,3-4,5,6). Blank line.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The results block «SUMMARY STATISTIC … ------------------------------------------------». Table layout (2 rows) follows after specifying the block if matrix output disables.<br />The table format for radial distribution function (matrix output disables)<br /> 0001.0000 2.0000e-01 000000003 04.000000<br />Space, sphere radius (9 characters, 4 decimal part), space, segment volume (10 characters, 4 decimal part), space, number of molecules in this radius (9 characters), space, radial distribution function (9 characters, 6 decimal part).<br />The table format for radial distribution function (matrix output enables)<br /> 0001.0000 04.000000<br />Space, sphere radius (9 characters, 4 decimal part), space, radial distribution function (9 characters, 6 decimal part).<br />The table format for radial-angles distribution function (matrix output disables)<br /> 0001.0000 000005.00 2.0000e-01 000000003 04.000000<br />Space, sphere radius (9 characters, 4 decimal part), space, segment angle (9 characters, 2 decimal part), segment volume (10 characters, 4 decimal part), space, number of molecules in this segment (9 characters), space, radial-angles distribution function (9 characters, 6 decimal part).<br />The table format for radial-angles distribution function (matrix output enables). Segment angle (9 characters, 2 decimal part) is shown in the title<br /> 0001.0000 04.000000 ...<br />Space, sphere radius (9 characters, 4 decimal part), space, radial-angles distribution function (9 characters, 6 decimal part) separated by spaces.</li>
|
||||
<li style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">End of the table</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Operation of the application</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading titles of source files, setting values of initial variables.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Step by step reading of source files, settings values of variables.<br />Calculating of the number of pairs of molecules in various relative configurations.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Print the result to the file.<br />Radial distribution function calculated by:<br />RDF(r) = (1 / norm) * sum(d(r_n-r), n),<br />norm(r) = (4*PI*r^2*dr) * ro * N * N_step,<br />where d(r_n-r) is the delta function, r is a shpere radius, n is a number of molecule, dr is the radius change step, ro is the number of molecules per volume unit, N is the number of molecules, N_step is a number of trajectory step.<br />Radial-angles distribution function calculated by:<br />RADF(r, fi) = (1 / norm) * sum(sum(d(r_n-r)*d(fi_n-fi), n), n),<br />norm(r, fi) = (4*PI*r^2*sin(fi)*dr*dfi) * ro * N * N_step,<br />where d(r_n-r) and d(fi_n-fi) are the delta functions, r is a shpere radius, fi is a segment angle, n is a number of molecule, dr is the radius change step, dfi is the angle change step, ro is the number of molecules per volume unit, N is the number of molecules, N_step is a number of trajectory step.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Working with GUI</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the tab &quot;RADF&quot;. Set the work directory.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the mask of trajectory files.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the first and the last trajectory steps.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the cell size, A.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set needed atoms.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set radial criteria. Set angular criteria if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the matrix output, the log file and the graph generate if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Run application.</li></ol></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="page_agl">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>98</width>
|
||||
<height>88</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Help about agl</string>
|
||||
</property>
|
||||
<attribute name="label">
|
||||
<string>agl</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout_2">
|
||||
<item row="0" column="0">
|
||||
<widget class="QTextBrowser" name="textBrowser_agl">
|
||||
<property name="html">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">agl</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Program that creates PDB file with chosen agglomerate.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Usage</span><br />mm_agl -a FILE -i FILE -c X,Y,Z -o FILE [ -l FILE ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Parametrs</span><br />-a FILE – input file with agglomerate<br />-i FILE – input trajectory file<br />-c X,Y,Z – cell size, A<br />-o FILE – output PDB file<br />-l FILE – print log to specified file<br />-q – do not print messages to STDOUT<br />-h – show this help and exit</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">File formats</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Agglomerate file (*.agl)</span></p>
|
||||
<ul style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Agglomerate title (AGL=2=1.3.4.) (1 – number of molecules in the agglomerate, 1.3.4. – agglomerate class, if verification of isomorphism is specified).</li>
|
||||
<li style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">The enumeration of molecules in the agglomerate (0000001=2,3,4,5,) (1 – number of molecule (7 characters), equal sign, the enumeration of connected molecules separated by commas).</li></ul>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Trajectory file (*.pdb)</span></p>
|
||||
<p align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://www.wwpdb.org/documentation/format33/sect9.html"><span style=" text-decoration: underline; color:#0000ff;">http://www.wwpdb.org/documentation/format33/sect9.html</span></a></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Operation of the application</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading titles of source files, setting values of initial variables.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading of source file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Search for the best configuration.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Print the result to the file.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Working with GUI</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select Menu -&gt; File creator -&gt; Agglomerate file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the file generated by statgen. Push &quot;Select&quot;.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Select the trajectory file from the drop down list. Select the agglomerate.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output file. Create file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the tab &quot;Generate PDB&quot;. Select &quot;From agglomerate&quot; from the drop down list.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the work directory.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the input trajectory file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the agglomerate file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the cell size, A.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output PDB file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the log file if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Run application.</li></ol></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="page_trj2pdb">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>98</width>
|
||||
<height>88</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Help about trj2pdb</string>
|
||||
</property>
|
||||
<attribute name="label">
|
||||
<string>trj2pdb</string>
|
||||
</attribute>
|
||||
<layout class="QGridLayout" name="gridLayout_7">
|
||||
<item row="0" column="0">
|
||||
<widget class="QTextBrowser" name="textBrowser_trj2pdb">
|
||||
<property name="html">
|
||||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'Liberation Serif'; font-size:10pt; font-weight:400; font-style:normal;">
|
||||
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600;">trj2pdb</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br />Program that creates PDB file from trajetory snapshot.</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Usage</span><br />mm_trj2pdb -i FILE -o FILE [ -l FILE ] [ -q ] [ -h ]<br /> <span style=" text-decoration: underline;">Parametrs</span><br />-i FILE – input trajectory file<br />-o FILE – output PDB file<br />-l FILE – print log to specified file<br />-q – do not print messages to STDOUT<br />-h – show this help and exit</p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">File formats</span></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"> <span style=" font-style:italic;">Trajectory file (*.pdb)</span></p>
|
||||
<p align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://www.wwpdb.org/documentation/format33/sect9.html"><span style=" text-decoration: underline; color:#0000ff;">http://www.wwpdb.org/documentation/format33/sect9.html</span></a></p>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Operation of the application</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading titles of source files, setting values of initial variables.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Reading of source file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Print the result to the file.</li></ol>
|
||||
<p align="justify" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /> <span style=" text-decoration: underline;">Working with GUI</span></p>
|
||||
<ol style="margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; -qt-list-indent: 1;"><li align="justify" style=" margin-top:12px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Go to the tab &quot;Generate PDB&quot;. Select &quot;From trajectory snapshot&quot; from the drop down list.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the work directory.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the input trajectory file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the output PDB file.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Set the log file if this needed.</li>
|
||||
<li align="justify" style=" margin-top:0px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Run application.</li></ol></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="pushButton_save">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>80</width>
|
||||
<height>23</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Save help to html</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Save html</string>
|
||||
</property>
|
||||
<property name="autoDefault">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="pushButton_close">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>80</width>
|
||||
<height>23</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Close window</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Close</string>
|
||||
</property>
|
||||
<property name="autoDefault">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
<tabstops>
|
||||
<tabstop>textBrowser_trj</tabstop>
|
||||
<tabstop>textBrowser_statgen</tabstop>
|
||||
<tabstop>textBrowser_envir</tabstop>
|
||||
<tabstop>textBrowser_radf</tabstop>
|
||||
<tabstop>textBrowser_agl</tabstop>
|
||||
<tabstop>textBrowser_trj2pdb</tabstop>
|
||||
<tabstop>pushButton_save</tabstop>
|
||||
<tabstop>pushButton_close</tabstop>
|
||||
</tabstops>
|
||||
<resources/>
|
||||
<connections>
|
||||
<connection>
|
||||
<sender>pushButton_close</sender>
|
||||
<signal>clicked()</signal>
|
||||
<receiver>HelpWindow</receiver>
|
||||
<slot>close()</slot>
|
||||
<hints>
|
||||
<hint type="sourcelabel">
|
||||
<x>545</x>
|
||||
<y>431</y>
|
||||
</hint>
|
||||
<hint type="destinationlabel">
|
||||
<x>598</x>
|
||||
<y>414</y>
|
||||
</hint>
|
||||
</hints>
|
||||
</connection>
|
||||
</connections>
|
||||
</ui>
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file main.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include "mainwindow.h"
|
||||
#include <QApplication>
|
||||
#include <QDir>
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file mainwindow.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <QFileDialog>
|
||||
#include <QDir>
|
||||
|
||||
@ -5,10 +21,11 @@
|
||||
#include "agglwindow.h"
|
||||
#include "aglallwindow.h"
|
||||
#include "atomtypeswindow.h"
|
||||
#include "helpwindow.h"
|
||||
#include "settingswindow.h"
|
||||
#include "statgengraphwindow.h"
|
||||
#include "clear_items.h"
|
||||
#include "start_events.h"
|
||||
#include "statgengraphwindow.h"
|
||||
#include "update_fields.h"
|
||||
|
||||
#include "mainwindow.h"
|
||||
@ -928,9 +945,10 @@ void MainWindow::createActions()
|
||||
{
|
||||
connect(ui->actionAtom_types_file, SIGNAL(triggered()), this, SLOT(createAtomTypes()));
|
||||
connect(ui->actionAgglomerate_file, SIGNAL(triggered()), this, SLOT(createAgglFile()));
|
||||
connect(ui->actionAbout, SIGNAL(triggered()), this, SLOT(aboutWin()));
|
||||
connect(ui->actionSettings, SIGNAL(triggered()), this, SLOT(settingsWinShow()));
|
||||
connect(ui->actionAgl_all, SIGNAL(triggered()), this, SLOT(aglallWinShow()));
|
||||
connect(ui->actionHelp, SIGNAL(triggered()), this, SLOT(helpWindow()));
|
||||
connect(ui->actionSettings, SIGNAL(triggered()), this, SLOT(settingsWinShow()));
|
||||
connect(ui->actionAbout, SIGNAL(triggered()), this, SLOT(aboutWin()));
|
||||
}
|
||||
|
||||
void MainWindow::createAtomTypes()
|
||||
@ -967,3 +985,10 @@ void MainWindow::aglallWinShow()
|
||||
aglallWin = new AglAllWindow(this, mm_agl_path);
|
||||
aglallWin->show();
|
||||
}
|
||||
|
||||
void MainWindow::helpWindow()
|
||||
{
|
||||
HelpWindow *helpWindow;
|
||||
helpWindow = new HelpWindow(this);
|
||||
helpWindow->show();
|
||||
}
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file mainwindow.h
|
||||
* Header of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef MAINWINDOW_H
|
||||
#define MAINWINDOW_H
|
||||
|
||||
@ -86,11 +102,12 @@ private slots:
|
||||
// completion
|
||||
void on_tabWidget_currentChanged(int index);
|
||||
// window signals
|
||||
void createAtomTypes();
|
||||
void createAgglFile();
|
||||
void aboutWin();
|
||||
void settingsWinShow();
|
||||
void aglallWinShow();
|
||||
void createAgglFile();
|
||||
void createAtomTypes();
|
||||
void settingsWinShow();
|
||||
void helpWindow();
|
||||
|
||||
private:
|
||||
Ui::MainWindow *ui;
|
||||
|
@ -1352,6 +1352,9 @@
|
||||
<property name="toolTip">
|
||||
<string>Number of steps of analysis</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
<property name="minimum">
|
||||
<number>1</number>
|
||||
</property>
|
||||
@ -3710,6 +3713,7 @@
|
||||
<property name="title">
|
||||
<string>Help</string>
|
||||
</property>
|
||||
<addaction name="actionHelp"/>
|
||||
<addaction name="actionAbout"/>
|
||||
</widget>
|
||||
<addaction name="menuMenu"/>
|
||||
@ -3755,6 +3759,14 @@
|
||||
<string>agl_all</string>
|
||||
</property>
|
||||
</action>
|
||||
<action name="actionHelp">
|
||||
<property name="text">
|
||||
<string>&Help</string>
|
||||
</property>
|
||||
<property name="shortcut">
|
||||
<string>F1</string>
|
||||
</property>
|
||||
</action>
|
||||
</widget>
|
||||
<layoutdefault spacing="6" margin="11"/>
|
||||
<tabstops>
|
||||
|
@ -19,7 +19,8 @@ HEADERS += mainwindow.h \
|
||||
aboutwindow.h \
|
||||
statgengraphwindow.h \
|
||||
settingswindow.h \
|
||||
aglallwindow.h
|
||||
aglallwindow.h \
|
||||
helpwindow.h
|
||||
FORMS += mainwindow.ui \
|
||||
errorwindow.ui \
|
||||
atomtypeswindow.ui \
|
||||
@ -27,7 +28,8 @@ FORMS += mainwindow.ui \
|
||||
aboutwindow.ui \
|
||||
statgengraphwindow.ui \
|
||||
settingswindow.ui \
|
||||
aglallwindow.ui
|
||||
aglallwindow.ui \
|
||||
helpwindow.ui
|
||||
SOURCES += main.cpp mainwindow.cpp \
|
||||
errorwindow.cpp \
|
||||
clear_items.cpp \
|
||||
@ -38,7 +40,8 @@ SOURCES += main.cpp mainwindow.cpp \
|
||||
aboutwindow.cpp \
|
||||
statgengraphwindow.cpp \
|
||||
settingswindow.cpp \
|
||||
aglallwindow.cpp
|
||||
aglallwindow.cpp \
|
||||
helpwindow.cpp
|
||||
TRANSLATIONS += rus.ts \
|
||||
eng.ts
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorProject>
|
||||
<!-- Written by QtCreator 2.8.1, 2013-08-30T19:09:45. -->
|
||||
<!-- Written by QtCreator 2.8.1, 2013-09-03T05:28:10. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>ProjectExplorer.Project.ActiveTarget</variable>
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file settingswindow.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <QApplication>
|
||||
#include <QDir>
|
||||
#include <QKeyEvent>
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file settingswindow.h
|
||||
* Header of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef SETTINGSWINDOW_H
|
||||
#define SETTINGSWINDOW_H
|
||||
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file start_events.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <QDir>
|
||||
#include <math.h>
|
||||
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file start_events.h
|
||||
* Header of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef START_EVENTS_H
|
||||
#define START_EVENTS_H
|
||||
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file statgengraphwindow.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <QDir>
|
||||
#include <QFileDialog>
|
||||
#include <QKeyEvent>
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file statgengraphwindow.h
|
||||
* Header of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef STATGENGRAPHWINDOW_H
|
||||
#define STATGENGRAPHWINDOW_H
|
||||
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file update_fields.cpp
|
||||
* Source code of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#include <QDir>
|
||||
#include <math.h>
|
||||
|
||||
|
@ -1,3 +1,19 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file update_fields.h
|
||||
* Header of mathmech
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef UPDATE_FIELDS_H
|
||||
#define UPDATE_FIELDS_H
|
||||
|
||||
|
10
mathmech/mm/CMakeLists.txt
Normal file
10
mathmech/mm/CMakeLists.txt
Normal file
@ -0,0 +1,10 @@
|
||||
# set project name
|
||||
set (SUBPROJECT mm)
|
||||
# set additional cmake file
|
||||
include (${SUBPROJECT}.cmake)
|
||||
|
||||
# additional targets
|
||||
set (TARGETS "")
|
||||
set (HEADERS "")
|
||||
|
||||
add_subdirectory (${SUBPROJECT_SOURCE_DIR})
|
1
mathmech/mm/README
Normal file
1
mathmech/mm/README
Normal file
@ -0,0 +1 @@
|
||||
libmm is a library for "mm" project
|
45
mathmech/mm/include/mathmech/atom_types.h
Normal file
45
mathmech/mm/include/mathmech/atom_types.h
Normal file
@ -0,0 +1,45 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file atom_types.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef ATOM_TYPES_H
|
||||
#define ATOM_TYPES_H
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that reads atom types from input file
|
||||
* @code
|
||||
* reading_atoms (input_at, &num_types, num_mol, num_atoms, ch_atom_types, atom_types,
|
||||
* total_types);
|
||||
* @endcode
|
||||
*
|
||||
* @param input_at input file name with atom types
|
||||
* @param num_types number of molecule types
|
||||
* @param num_mol massive of number of molecules of selected type
|
||||
* @param num_atoms massive of number of atoms of selected molecule
|
||||
* @param ch_atom_types massive of char atom types
|
||||
* @param atom_types massive of atom types
|
||||
* @param total_types number of different atom types
|
||||
*
|
||||
* @return 1 - error in opening file
|
||||
* @return 2 - error in file format
|
||||
* @return 3 - memory error
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int reading_atoms (const char *input_at, int *num_types, int *num_mol, int *num_atoms,
|
||||
char *ch_atom_types, int *atom_types, const int total_types);
|
||||
|
||||
|
||||
#endif /* ATOM_TYPES_H */
|
51
mathmech/mm/include/mathmech/coords.h
Normal file
51
mathmech/mm/include/mathmech/coords.h
Normal file
@ -0,0 +1,51 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file coords.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef COORDS_H
|
||||
#define COORDS_H
|
||||
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that reads coordinates from special file format
|
||||
* @code
|
||||
* reading_coords (0, filename, type_inter, label_atom, &_system_info,
|
||||
* true_label_mol, _atom_info);
|
||||
* @endcode
|
||||
*
|
||||
* @param mode mode of reading; '0' is statgen, '1' is envir or
|
||||
* frad, '2' is agl
|
||||
* @param filename input file name
|
||||
* @param type_inter number of needed atoms
|
||||
* (number of needed molecules)
|
||||
* @param label_atom massive of needed atom types
|
||||
* (massive of needed molecules)
|
||||
* @param _system_info system information structure
|
||||
* @param true_label_mol massive of true numbers of molecule for atoms
|
||||
* @param _atom_info atom information structure
|
||||
*
|
||||
* @return 1 - file $filename does not exist
|
||||
* @return 2 - unknown mode
|
||||
* @return 3 - memory error
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int reading_coords (const int mode, const char *filename, const int type_inter,
|
||||
const int *label_atom, system_info *_system_info,
|
||||
int *true_label_mol, atom_info *_atom_info);
|
||||
|
||||
|
||||
#endif /* COORDS_H */
|
43
mathmech/mm/include/mathmech/envir_search.h
Normal file
43
mathmech/mm/include/mathmech/envir_search.h
Normal file
@ -0,0 +1,43 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file envir_search.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef ENVIR_SEARCH_H
|
||||
#define ENVIR_SEARCH_H
|
||||
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that searchs environment
|
||||
* @code
|
||||
* search_envir (number_of_molecule, _system_info, centr_coords, rad, needed_mol,
|
||||
* &num_needed_mol);
|
||||
* @endcode
|
||||
*
|
||||
* @param num_of_mol number of molecule
|
||||
* @param _system_info system information structure
|
||||
* @param centr_coords massive of centered coordinates
|
||||
* @param rad radius of environment sphere
|
||||
* @param needed_mol massive of number of needed molecules
|
||||
* @param num_needed_mol number of needed molecules
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int search_envir (const int num_of_mol, const system_info _system_info, const float *centr_coords,
|
||||
const double rad, int *needed_mol, int *num_needed_mol);
|
||||
|
||||
|
||||
#endif /* ENVIR_SEARCH_H */
|
83
mathmech/mm/include/mathmech/graph.h
Normal file
83
mathmech/mm/include/mathmech/graph.h
Normal file
@ -0,0 +1,83 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file graph.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef GRAPH_H
|
||||
#define GRAPH_H
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that calculates number of cycles in graph
|
||||
* @code
|
||||
* cycle = check_cycle (N, pn);
|
||||
* @endcode
|
||||
*
|
||||
* @param N number of vertexes
|
||||
* @param pn massive of number of vertexes with weight equals to i
|
||||
*
|
||||
* @return number of cycles
|
||||
*/
|
||||
int check_cycle (const int N, const int *pn);
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that returns number of cycles different size
|
||||
* @code
|
||||
* check_cycle_size (N, matrix, depth, n_cycle);
|
||||
* @endcode
|
||||
*
|
||||
* @param N number of vertexes
|
||||
* @param matrix connectivity matrix
|
||||
* @param depth depth of search (maximum number of vertexes in cycle)
|
||||
* @param n_cycle massive of number of cycle with number of vertexes
|
||||
* equals to i
|
||||
*
|
||||
* @return 1 - memory error
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int check_cycle_size (const int N, const int *matrix, const int depth, int *n_cycle);
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that calculates number of tails
|
||||
* @code
|
||||
* tails = check_tail (pn);
|
||||
* @endcode
|
||||
*
|
||||
* @param pn massive of number of vertexes with weight equals to i
|
||||
*
|
||||
* @return number of tails
|
||||
*/
|
||||
int check_tail (const int *pn);
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that analyzes graph isomorhic class
|
||||
* @code
|
||||
* graph_analyze (N, matrix, max_depth, iso);
|
||||
* @endcode
|
||||
*
|
||||
* @param N number of vertexes
|
||||
* @param matrix connectivity matrix
|
||||
* @param max_depth maximum depth of search for check_cycle_size
|
||||
* @param iso isomorphism class
|
||||
*
|
||||
* @return 1 - memory error
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int graph_analyze (const int N, const int *matrix, const int max_depth, int *iso);
|
||||
|
||||
|
||||
#endif /* GRAPH_H */
|
38
mathmech/mm/include/mathmech/messages.h
Normal file
38
mathmech/mm/include/mathmech/messages.h
Normal file
@ -0,0 +1,38 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file messages.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef MESSAGES_H
|
||||
#define MESSAGES_H
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that prints messages to output
|
||||
* @code
|
||||
* message (log, mode, text, output);
|
||||
* @endcode
|
||||
*
|
||||
* @param log equal to 1 if print to logfile
|
||||
* @param mode number of message
|
||||
* @param text additional text
|
||||
* @param output output file (may be stdout)
|
||||
*
|
||||
* @return 1 - unknown mode
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int message (const int log, const int mode, const char *text, FILE *output);
|
||||
|
||||
|
||||
#endif /* MESSAGES_H */
|
41
mathmech/mm/include/mathmech/print_struct.h
Normal file
41
mathmech/mm/include/mathmech/print_struct.h
Normal file
@ -0,0 +1,41 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file print_struct.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef PRINT_STRUCT_H
|
||||
#define PRINT_STRUCT_H
|
||||
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that prints structure to pdb file
|
||||
* @code
|
||||
* print_structure (output, num_needed_mol, needed_mol, _system_info, _atom_info);
|
||||
* @endcode
|
||||
*
|
||||
* @param output output file name
|
||||
* @param num_needed_mol number of needed molecules
|
||||
* @param needed_mol massive of number of needed molecules
|
||||
* @param _system_info system information structure
|
||||
* @param _atom_info atom information structure
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int print_structure (const char *output, const int num_needed_mol, const int *needed_mol,
|
||||
const system_info _system_info, const atom_info *_atom_info);
|
||||
|
||||
|
||||
#endif /* PRINT_STRUCT_H */
|
45
mathmech/mm/include/mathmech/print_trj.h
Normal file
45
mathmech/mm/include/mathmech/print_trj.h
Normal file
@ -0,0 +1,45 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file print_trj.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef PRINT_TRJ_H
|
||||
#define PRINT_TRJ_H
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that prints trajectory snapshots
|
||||
* @code
|
||||
* printing_trj (filename, atoms, num_types, num_mol, num_atoms, ch_atom_types,
|
||||
* atom_types, coords);
|
||||
* @endcode
|
||||
*
|
||||
* @param filename output file name
|
||||
* @param atoms number of atoms in system
|
||||
* @param num_types number of molecule types
|
||||
* @param num_mol massive of number of molecule of selected type
|
||||
* @param num_atoms massive of number of atoms of selected molecule
|
||||
* @param ch_atom_types massive of char atom types
|
||||
* @param atom_types massive of atom types
|
||||
* @param coords massive of coordinates
|
||||
* @param cell cell size
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int printing_trj (const char *filename, const int atoms, const int num_types, const int *num_mol,
|
||||
const int *num_atoms, const char *ch_atom_types, const int *atom_types,
|
||||
const float *coords, const float *cell);
|
||||
|
||||
|
||||
#endif /* PRINT_TRJ_H */
|
76
mathmech/mm/include/mathmech/radf.h
Normal file
76
mathmech/mm/include/mathmech/radf.h
Normal file
@ -0,0 +1,76 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file radf.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef RADF_H
|
||||
#define RADF_H
|
||||
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that searchs molecule for rdf massive
|
||||
* @code
|
||||
* search_rdf (_system_info, _atom_info, _radf_info, radf);
|
||||
* @endcode
|
||||
*
|
||||
* @param _system_info system information structure
|
||||
* @param _atom_info atom information structure
|
||||
* @param _radf_info radf information structure
|
||||
* @param radf not normed RDF
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int search_rdf (const system_info _system_info, const atom_info *_atom_info,
|
||||
const radf_info _radf_info, int *radf);
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that searchs molecule for rdf massive by centered coordinates
|
||||
* @code
|
||||
* search_rdf_centr (_system_info, _atom_info, _radf_info, radf);
|
||||
* @endcode
|
||||
*
|
||||
* @param _system_info system information structure
|
||||
* @param _atom_info atom information structure
|
||||
* @param _radf_info radf information structure
|
||||
* @param radf not normed RDF
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
* @return 1 - error in set center (missing atoms)
|
||||
*/
|
||||
int search_rdf_centr (const system_info _system_info, const atom_info *_atom_info,
|
||||
const radf_info _radf_info, int *radf);
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that searchs molecule for radf massive
|
||||
* @code
|
||||
* search_radf (_system_info, _atom_info, _radf_info, radf);
|
||||
* @endcode
|
||||
*
|
||||
* @param _system_info system information structure
|
||||
* @param _atom_info atom information structure
|
||||
* @param _radf_info radf information structure
|
||||
* @param radf not normed RDF
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
* @return 1 - error in set center (missing atoms)
|
||||
*/
|
||||
int search_radf (const system_info _system_info, const atom_info *_atom_info,
|
||||
const radf_info _radf_info, int *radf);
|
||||
|
||||
|
||||
#endif /* RADF_H */
|
43
mathmech/mm/include/mathmech/radf_proc.h
Normal file
43
mathmech/mm/include/mathmech/radf_proc.h
Normal file
@ -0,0 +1,43 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file radf_proc.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef RADF_PROC_H
|
||||
#define RADF_PROC_H
|
||||
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that print result to output file
|
||||
* @code
|
||||
* print_result (output, matrix, mode, _system_info, _radf_info, radf);
|
||||
* @endcode
|
||||
*
|
||||
* @param output output file name
|
||||
* @param matrix status of matrix-mode
|
||||
* @param mode 1 - if RDF, 2 - if RDF for center mass, 3 - if RADF
|
||||
* @param _system_info system information structure
|
||||
* @param _radf_info radf information structure
|
||||
* @param radf not normed RADF
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int print_result (const char *output, const int matrix, const int mode,
|
||||
const system_info _system_info, const radf_info _radf_info,
|
||||
const int *radf);
|
||||
|
||||
|
||||
#endif /* RADF_PROC_H */
|
37
mathmech/mm/include/mathmech/read_agl.h
Normal file
37
mathmech/mm/include/mathmech/read_agl.h
Normal file
@ -0,0 +1,37 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file read_agl.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef READ_AGL_H
|
||||
#define READ_AGL_H
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that reads agglomerate from statgen-formated file
|
||||
* @code
|
||||
* reading_agl (aglinput, &num_needed_mol, agl_class, needed_mol);
|
||||
* @endcode
|
||||
*
|
||||
* @param aglinp agglomerate file name
|
||||
* @param num_needed_mol number of needed molecules
|
||||
* @param agl_class agglomerate class
|
||||
* @param needed_mol massive of numbed of needed molecules
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int reading_agl (const char *aglinp, int *num_needed_mol, char *agl_class, int *needed_mol);
|
||||
|
||||
|
||||
#endif /* READ_AGL_H */
|
61
mathmech/mm/include/mathmech/read_gmx.h
Normal file
61
mathmech/mm/include/mathmech/read_gmx.h
Normal file
@ -0,0 +1,61 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file read_gmx.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef READ_GMX_H
|
||||
#define READ_GMX_H
|
||||
|
||||
|
||||
/**
|
||||
* @brief funtion that translates coordinate
|
||||
* @code
|
||||
* translate_coords (coords[3*i+j], cell[j], trans);
|
||||
* @endcode
|
||||
*
|
||||
* @param coords coordinate
|
||||
* @param cell cell size
|
||||
* @param trans massive of translated coordinates
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int translate_coords (const float coords, const float cell, float *trans);
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that read GROMACS trajectory file and write to output
|
||||
* @code
|
||||
* rw_gmx (input, step, output, num_types, num_mol, num_atoms, ch_atom_types,
|
||||
* atom_types, coords);
|
||||
* @endcode
|
||||
*
|
||||
* @param input input file name
|
||||
* @param step number of trajectory steps
|
||||
* @param output mask of output files
|
||||
* @param num_types number of molecule types
|
||||
* @param num_mol massive of number of molecule of selected type
|
||||
* @param num_atoms massive of number of atoms of selected molecule
|
||||
* @param ch_atom_types massive of char atom types
|
||||
* @param atom_types massive of atom types
|
||||
* @param coords massive of coordinates
|
||||
*
|
||||
* @return 1 - file does not exist
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int rw_gmx (const char *input, const int step, const char *output, const int num_types,
|
||||
const int *num_mol, const int *num_atoms, const char *ch_atom_types,
|
||||
const int *atom_types, float *coords);
|
||||
|
||||
|
||||
#endif /* READ_GMX_H */
|
46
mathmech/mm/include/mathmech/read_puma.h
Normal file
46
mathmech/mm/include/mathmech/read_puma.h
Normal file
@ -0,0 +1,46 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file read_puma.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef READ_PUMA_H
|
||||
#define READ_PUMA_H
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that read PUMA trajectory file and write to output
|
||||
* @code
|
||||
* rw_puma (input, step, output, num_types, num_mol, num_atoms, ch_atom_types,
|
||||
* atom_types, coords);
|
||||
* @endcode
|
||||
*
|
||||
* @param input input file name
|
||||
* @param step number of trajectory steps
|
||||
* @param output mask of output files
|
||||
* @param num_types number of molecule types
|
||||
* @param num_mol massive of number of molecule of selected type
|
||||
* @param num_atoms massive of number of atoms of selected molecule
|
||||
* @param ch_atom_types massive of char atom types
|
||||
* @param atom_types massive of atom types
|
||||
* @param coords massive of coordinates
|
||||
*
|
||||
* @return 1 - file does not exist
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int rw_puma (const char *input, const int step, const char *output, const int num_types,
|
||||
const int *num_mol, const int *num_atoms, const char *ch_atom_types,
|
||||
const int *atom_types, float *coords);
|
||||
|
||||
|
||||
#endif /* READ_PUMA_H */
|
36
mathmech/mm/include/mathmech/select_mol.h
Normal file
36
mathmech/mm/include/mathmech/select_mol.h
Normal file
@ -0,0 +1,36 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file select_mol.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef SELECT_MOL_H
|
||||
#define SELECT_MOL_H
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that selects molecules from array of translated molecules
|
||||
* @code
|
||||
* select_molecule (centr_coords, num_needed_mol, needed_mol);
|
||||
* @endcode
|
||||
*
|
||||
* @param centr_coords massive of centered coordinates
|
||||
* @param num_needed_mol number of needed molecules
|
||||
* @param needed_mol massive of number of needed molecules
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int select_molecule (const float *centr_coords, const int num_needed_mol, int *needed_mol);
|
||||
|
||||
|
||||
#endif /* SELECT_MOL_H */
|
39
mathmech/mm/include/mathmech/set_center.h
Normal file
39
mathmech/mm/include/mathmech/set_center.h
Normal file
@ -0,0 +1,39 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file set_center.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef SET_CENTER_H
|
||||
#define SET_CENTER_H
|
||||
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that searchs center mass of molecules
|
||||
* @code
|
||||
* set_center (_system_info, _atom_info, centr_coords);
|
||||
* @endcode
|
||||
*
|
||||
* @param _system_info system information structure
|
||||
* @param _atom_info atom information structure
|
||||
* @param centr_coords massive of centered coordinates
|
||||
*
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int set_center (const system_info _system_info, const atom_info *_atom_info,
|
||||
float *centr_coords);
|
||||
|
||||
|
||||
#endif /* SET_CENTER_H */
|
50
mathmech/mm/include/mathmech/stat_print.h
Normal file
50
mathmech/mm/include/mathmech/stat_print.h
Normal file
@ -0,0 +1,50 @@
|
||||
/*
|
||||
* ----------------------------------------------------------------------------
|
||||
* "THE BEER-WARE LICENSE" (Revision 42):
|
||||
* Evgeniy Alekseev wrote this file. As long as you retain this notice you
|
||||
* can do whatever you want with this stuff. If we meet some day, and you think
|
||||
* this stuff is worth it, you can buy me a beer in return
|
||||
* ----------------------------------------------------------------------------
|
||||
*/
|
||||
/**
|
||||
* @file stat_print.h
|
||||
* Header of mathmech library
|
||||
* @author Evgeniy Alekseev (arcanis)
|
||||
* @copyright Beerware
|
||||
* @bug No known bugs
|
||||
*/
|
||||
|
||||
#ifndef STAT_PRINT_H
|
||||
#define STAT_PRINT_H
|
||||
|
||||
#include <mathmech/var_types.h>
|
||||
|
||||
|
||||
/**
|
||||
* @brief function that prints agglomerates to output file
|
||||
* @code
|
||||
* printing_agl (input, output, connect, _system_info, true_label_mol, num_mol_agl,
|
||||
* agl, stat, max_depth, type_agl);
|
||||
* @endcode
|
||||
*
|
||||
* @param input input file name
|
||||
* @param output output file name
|
||||
* @param connect connectivity graph for all molecules
|
||||
* @param _system_info system information structure
|
||||
* @param true_label_mol massive of true numbers of molecule for atoms
|
||||
* @param num_mol_agl massive of number of molecules in agglomerates
|
||||
* @param agl massive of agglomerates
|
||||
* @param stat massive of statistic
|
||||
* @param max_depth maximum depth for check cycles in graph analyze
|
||||
* @param type_agl massive of number of agglomerate types
|
||||
*
|
||||
* @return 1 - memory error
|
||||
* @return 0 - exit without errors
|
||||
*/
|
||||
int printing_agl (const char *input, const char *output, const int *connect,
|
||||
const system_info _system_info, const int *true_label_mol,
|
||||
const int *num_mol_agl, const int *agl, const int *stat,
|
||||
const int max_depth, int *type_agl);
|
||||
|
||||
|
||||
#endif /* STAT_PRINT_H */
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user