Commit 8871cc38 authored by eric pellegrini's avatar eric pellegrini

Added support for building simple and theoretical help

Added menu items for displaying those helps.
parent 38c70846
#!/bin/sh
latex theory_help.tex
makeglossaries theory_help
latex theory_help.tex
latex theory_help.tex
dvipdf theory_help.dvi
mv theory_help.pdf ../MDANSE/Doc
rm theory_help.acn
rm theory_help.acr
rm theory_help.alg
rm theory_help.aux
rm theory_help.dvi
rm theory_help.glo
rm theory_help.ist
rm theory_help.out
rm theory_help.log
rm theory_help.toc
This diff is collapsed.
This diff is collapsed.
......@@ -161,6 +161,10 @@ class MainFrame(wx.Frame):
helpMenu = wx.Menu()
aboutItem = helpMenu.Append(wx.ID_ANY, 'About')
helpMenu.AppendSeparator()
simpleHelpItem = helpMenu.Append(wx.ID_ANY, 'Simple help')
theoryHelpItem = helpMenu.Append(wx.ID_ANY, 'Theoretical background')
helpMenu.AppendSeparator()
bugReportItem = helpMenu.Append(wx.ID_ANY, 'Bug report')
self._mainMenu.Append(helpMenu, 'Help')
......@@ -176,6 +180,8 @@ class MainFrame(wx.Frame):
self.Bind(wx.EVT_MENU, self.on_toggle_controller, showControllerItem)
self.Bind(wx.EVT_MENU, self.on_toggle_toolbar, showToolbarItem)
self.Bind(wx.EVT_MENU, self.on_bug_report, bugReportItem)
self.Bind(wx.EVT_MENU, self.on_simple_help, simpleHelpItem)
self.Bind(wx.EVT_MENU, self.on_theory_help, theoryHelpItem)
def build_toolbar(self):
......@@ -243,7 +249,7 @@ Authors:
"""The version 1 of MDANSE is currently under testing.
In order to facilitate the integration of new features and bug fixes, please send pull request to:
https://github.com/eurydyce/MDANSE/tree/master/MDANSE
https://github.com/mdanseproject/MDANSE/tree/master/MDANSE
for any other request, please send an email to:
......@@ -259,7 +265,26 @@ or directly to the MDANSE mailing list:
d = wx.MessageDialog(self, report_str, 'Bug report', style=wx.OK|wx.ICON_INFORMATION)
d.ShowModal()
d.Destroy()
def on_simple_help(self,event):
path = os.path.join(PLATFORM.doc_path(),'simple_help.txt')
with open(path,'r') as f:
info = f.read()
frame = wx.Frame(self, style=wx.DEFAULT_DIALOG_STYLE|wx.MINIMIZE_BOX|wx.MAXIMIZE_BOX|wx.RESIZE_BORDER)
panel = wx.Panel(frame,wx.ID_ANY)
sizer = wx.BoxSizer(wx.VERTICAL)
text = wx.TextCtrl(panel,wx.ID_ANY,style=wx.TE_MULTILINE|wx.TE_WORDWRAP|wx.TE_READONLY)
text.SetValue(info)
sizer.Add(text,1,wx.ALL|wx.EXPAND,5)
panel.SetSizer(sizer)
frame.Show()
def on_theory_help(self,event):
webbrowser.open(os.path.join(PLATFORM.doc_path(),'theory_help.pdf'))
def on_open_classes_registry(self,event):
from MDANSE.App.GUI.Framework.Plugins.RegistryViewerPlugin import RegistryViewerFrame
......
......@@ -89,6 +89,16 @@ class Platform(object):
'''
pass
def doc_path(self):
'''
Returns the path for MDANSE documentation root directory.
:return: the path for MDANSE documentation root directory
:rtype: str
'''
return os.path.join(self.package_directory(), 'Doc')
def api_path(self):
'''
Returns the path for MDANSE HTML API.
......
MDANSE - 'simple' help
Sequence of operations in MDANSE: Convert trajectory into MDANSE-usable form. Load converted trajectory (.nc file). Molecular viewer plugin allows e.g. atom selection. Q-vector plugin allows these to be defined for analyses. Run analyses - many can be run simultaneously on one or several processors. Plot results.
Convertors: are required to transform the standard MD trajectories from MD codes into a form that is usable by MDANSE (netcdf format). For non-standard trajectories, a generic convertor for ascii files is available.
Q-vectors: are required when calculating quantities like I(Q,t) and S(Q,w). From analyses windows, they are chosen from available definitions, which in-turn are determined from the Q-vector plug-in. Q-vectors can be generated in a number of ways, the most common (for a periodic system) being the 'spherical lattice' in terms of Q (units nm-1) and 'grid' in terms of (h,k,l). The generated list of Q-vectors can be visualised and saved with a name which is then available for corresponding analyses for the trajectory.
Instrument resolution: this function determines a window function which is used when time-dependent data is Fourier transformed into the frequency domain - it is used to mimic the resolution function of a neutron scattering instrument. The 'set' button allows the functional form and corresponding parameters to be visualised and saved. Analyses using the Fast Fourier Transform are much faster if the number of frames is a power of 2.
Weights: are required in many analyses, for example the coherent scattering length (b_coherent) for the Dynamic Coherent Structure Factor (DCSF). The most reasonable weighting scheme is proposed for each analysis. It can be changed from the drop-down list. The corresponding values are shown in the periodic table and associated table of data. They can be edited and saved. Any data in the table can be used for the weighting scheme.
Atom selection: allows analyses to be performed on subsets of atoms. Choosing the 'molecular viewer' plugin shows the molecular model which in-turn allows the 'atom selection' plugin to be chosen. The atom colours in the molecular viewer can also be edited in the periodic table of data. The interface allows selections to be made using keywords (atom names, types, groups, residues, etc), python scripts, mouse clicks in the model window (which is very useful when selecting atoms in specific positions) and a box widget (selection by regions of the periodic lattice). The atom selection is saved with a name and is available in all relevant analyses.
Atom transmutation: works as for atom selection. The final atom type for the selected atoms must then be chosen from the drop-down list. This is typically used to replace hydrogen with deuterium in neutron scattering studies.
Units: the basic units in MDANSE are ps for time, THz for frequency, nm for distance, nm-1 for Q. These units can be changed in the plotter e.g. THz to meV or invcm (wavenumber), nm to ang, invnm to invang.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment