Problems,
Workarounds, Clarifications (FAQ)
- Spreadsheet
functions fail with cryptic messages implying shell errors.
This can sometimes happen if the name of your molecule has spaces, parenthese
or quotes single or double) imbedded. What is happening is that when the
HASL SPL program attempts to pass the molecule information to the HASL
executable the unix shell interpreter can not parse the information properly.
The workaround is to change the name of the molecules in the database.
- A
lot of other serious HASL problems arise from path, environment, and protection
difficulties and inconsistencies. Each time the actual HASL
executable is run from within SYBYL, it is a new shell being spawned, with
the user's own .cshrc, etc. being executed. If HASL is not defined in the
.cshrc, e.g., if the user defines HASL by sourcing its definition file
directly, then the important HASL environmental variables may not be properly
defined and HASL will not function as designed. Often the "ridiculously
long path" unix error accompanies this problem. Another related potential
source of this type of problem arises when the HASL scratch files, written
to the user's ~/dumpster directory, don't have write privilege. (This may
occur, for example, if root privilege was earlier used to run HASL.) HASL
attempts to reuse the same filenames to reduce disk space, and if HASL
can't write to one of its scratch files, it will fail.
- Most
HASL errors are currently reported only in the SYBYL text window.
Thus the SPL part of the program does not know that the HASL executable
had a problem, and may report results in dialog boxes that are artifacts
from previous HASL sessions. We will continue to supplement the HASL error
reporting with upcoming releases, but there is a significant tradeoff here.
The more error checking that is done with the SPL code (and all screen
dialogs are generated by SPL), the slower and more unresponsive the HASL
user interface becomes. The obvious workaround is to monitor the SYBYL
text window for error messages from the HASL executable.
- HASL
calculations, especially cross-validation are Slow!
We will look into optimizing the procedure for future releases. You can always
cut back on the number of iterations, change the error limit or grid
spacing to increase the speed. For the most part the cross-validation exercise
is to verify that you are creating a good model within the data set, cross-validated
r2 is not the final product of the model. Therefore it would
seem reasonable to "cheat" some of the HASL parameters during the model
design phase and only use the full size parameters for cross-validation
at the end.
HASL
4.10S Installation Instructions
The HASL application module for SYBYL runs on
the Silicon Graphics IRIS (O2, Indy, Indigo-2, etc.) series only running
Irix 5.3+. The HASL module requires at the minimum: a SYBYL license from
Tripos and a HASL License from eduSoft in order to function.
HASL is released as a UNIX tar set in a variety
of tape formats. The release consists of an executable image "hasl",
executable images for a few small utility programs, and extensive SPL (SYBYL
Programming Language) script that creates menus, dialog boxes, and macros
to execute the HASL programs. The installation (cshell) script places the
HASL files in appropriate subdirectories under a new eduSoft directory
tree and makes a few very minor (and easily reversible) changes to the
SYBYL directory tree. A new cshrc file is created that, when "sourced",
causes SYBYL to come up with HASL installed in its menu system. The HASL
installation creates a parallel directory structure which in no way affects
the performance and integrity of the previously installed Tripos tree.
The HASL 4.10S installation consists of three
components: 1) installing the HASL software, 2) making a few minor changes
to the Sybyl environment to enable HASL, and 3) setting up user accounts
to give them access to HASL. Although it is not strictly necessary, the
installation of HASL 4.10S is best performed as the "superuser".
Notes concerning the special case for installing HASL on systems where other eduSoft
software (i.e., HINT or Molconn-Z) is aready installed are below.
- Make a root directory for the eduSoft products.
We recommend /usr/eduSoft, but any location will work. The unix command
for this step is: mkdir /usr/eduSoft
- Unload the HASL 4.10S tape (or 'uncompressed'
FTP tar-set) into this directory:
- cd /usr/eduSoft
- tar xov (tar xovf hasl401s.Z )
- Make sure Sybyl is defined. If you are not sure,
check to see if the environment variable TA_ROOT is defined:
If $TA_ROOT is not defined, you will have to
perform the steps you usually undertake to run Sybyl up to the point where
you enter sybyl to the unix prompt.
- The HASL installation requies the following changes
to the Sybyl environment. You will need to verify that there are not local
modifications to these files that will be lost when HASL is installed.
- The NetBatch application list, $TA_ROOT/batch/admin/APPLICATION,
must be modified to include the new HASL applications so that they can be run
through Sybyl NetBatch.
- The HASL NetBatch shell programs must be copied
into the appropriate Sybyl directory $TA_ROOT/batch/cmd.
- File(s) must be copied into the $TA_ROOT/sybylbase/tables/ta_coltype
directory to define the HASLMODEL column type. (This directory has been
created by Tripos for this purpose.)
- Execute the HASL 4.10S installation script
(if you are comfortable with the changes to the Sybyl environment described).
The installation script is quite simple, and the functions it includes
can be performed manually if you wish to intercept any of the steps.
- cd eslc
- sh install_hasl401S
- Edit $TA_ROOT/lib/ta_site.csh and $TA_ROOT/lib/ta_site.sh
to add the following features: a) define two Tripos variables, TA_MENUBAR_USER_INIT
and TA_MSS_USER_INIT, as null; b) define the EDUSOFT_ROOT environmental
variable; c) "source" a platform-and product-specific definitions
file that defines the a variety of eduSoft environment variables; and d)
activate user specific startup information for Sybyl (the .sybylrc file,
see below).
To do this:
- append install/ta_site.csh_eslc to $TA_ROOT/lib/ta_site.csh
either with the editor or the unix cat command.
- append install/ta_site.sh_eslc to $TA_ROOT/lib/ta_site.sh
either with the editor or the unix cat command.
- edit both $TA_ROOT/lib/ta_site.csh and $TA_ROOT/lib/ta_site.sh
so that the proper location of $EDUSOFT_ROOT is set (assumed above to be
/usr/eduSoft) and that the proper cshrc and profile files are defined for
the SGI processor you are using and the eduSoft products you have licensed
(see the table below). (All other HASL environment variables are defined
relative to $EDUSOFT_ROOT.) If you are on a mixed network of processors,
you may have to add some shell logic here to call the correct definition
files. Note that there is not at present an r8000/r10000 executable for HASL:
the r4000 executable was compiled with the "old" 32 bit MIPS library and linked
with the r4000/r5000 SYBYL library; the r8000 executable was compiled with the
"new" 32 bit MIPS library and linked with the r8000/r10000 SYBYL library.
- (Also, in $TA_ROOT/lib/ta_site.csh and $TA_ROOT/lib/ta_site.sh
make sure that the TA_USER_STRT option is turned on and pointing to $HOME/.sybylrc.)
Product(s) | Platform | cshrc (in ta_site.csh) | profile (in ta_site.sh) |
HASL 4.10S | r3000 | cshrc_hasl_r3 | profile_hasl_r3 |
r4000/r5000 | cshrc_hasl | profile_hasl |
r8000/r10000 | cshrc_hasl_r8 | profile_hasl_r8 |
HASL 4.10S & Hint 2.35S | r3000 | cshrc_hasl+hint_r3 | profile_hasl+hint_r3 |
r4000/r5000 | cshrc_hasl+hint | profile_hasl+hint |
r8000/r10000 | cshrc_hasl+hint_r8 | profile_hasl+hint_r8 |
HASL 4.10S & Molconn-Z 3.50S | r3000 | cshrc_hasl+mconn_r3 | profile_hasl+mconn_r3 |
r4000/r5000 | cshrc_hasl+mconn | profile_hasl+mconn |
r8000/r10000 | cshrc_hasl+mconn_r8 | profile_hasl+mconn_r8 |
HASL 4.10S & Hint 2.35S & Molconn-Z 3.50S | r3000 | cshrc_hasl+hint+mconn_r3 | profile_hasl+hint+mconn_r3 |
r4000/r5000 | cshrc_hasl+hint+mconn | profile_hasl+hint+mconn |
r8000/r10000 | cshrc_hasl+hint+mconn_r8 | profile_hasl+hint+mconn_r8 |
- Install the HASL License Keys(s) as described
on the included (hardcopy) documentation or on-line.
- Enable HASL 4.10S for users. All users who want
to use the HASL program through Sybyl must modify (or create) their individual
.sybylrc files to include the two lines in the file $EDUSOFT_ROOT/eslc/install/sybylrc.
These added lines are two commands that Sybyl must execute on startup in
order for HASL to be defined.
- vi ~user/.sybylrc
- make appropriate changes (for each user)...
Note that HASL 4.10S uses each user's dumpster
directory as a scratch location for temporary files. Confirm that each
HASL user has a ~user/dumpster.
Before using HASL each user must execute
the command HASL_USER to the unix prompt to create and load a personal
options directory.
- Try it out. Re-login or re-source the .cshrc
file and run Sybyl. If HASL 4.10S is set up properly, the messages
"Loading eslc menubar descriptions" and "Loading HASL macro
definitions and dialogs" will appear in the graphics screens after
the usual Sybyl messages. There should be a new pulldown "eslc"
on the Sybyl menubar which includes a "HASL" menu item. Follow
all of the HASL Tutorials in the manual for a complete introduction to
the program, but it is advisable at this point to try at least a portion
of Lesson 1 to confirm that the license is properly configured and that
the program is operational.
Adding HASL to a Site
that has HINT and/or Molconn-Z
Generally follow the procedure above, but keep in mind:
- You should already have an $EDUSOFT_ROOT directory (Step 1).
- It may be easier to add the lines in install//hasl400S/APPLICATION.change to
$TA_ROOT/batch/admin/APPLICATION rather than what is done automatically by the
install_hasl400S script (Steps 4-5).
- It should be easy to modify $TA_ROOT/lib/ta_site.csh and $TA_ROOT/lib/ta_site.sh
to add 'hasl+' to the cshrc_ and profile_ in these files, repectively (Step 6).
- All you should have to do in step 8 is get each user to type HASL_SETUP before
they use HASL for the first time.
Special Notes for "Customized" Sybyl
Sites
There can be difficulties with the above procedures if there have already
been local modifications made to your Sybyl installation. For example,
if the $TA_MENUBAR_USER_INIT or $TA_MSS_USER_INIT variables are already
being used at your site to define new functions, the described installation
procedure should be modified. To make it easy to merge the HINT/Molconn-Z
SPL files wth other applications, there are two types of environmental
variables in the HASL/HINT/Molconn-Z setup. The first, $ESLC_SPL, points to
files (which are named with the eslc_ prefix) that may be moved to another
directory or otherwise modified to fit the local requirements. The other
type of environmental variable is specific to the product, i.e., $HASL_SPL, $HINT_SPL
and $MCONN_SPL; these are reserved for files that are specific to the product
(i.e., HASL, HINT and Molconn-Z) functionality. The root of the HASL, HINT and Molconn-Z
additions to Sybyl are in the files: $ESLC_SPL/eslc_sybyl.spl and $ESLC_SPL/eslc_spreadsheet.spl,
which are pointed to by $TA_MENUBAR_USER_INIT and $TA_MSS_USER_INIT, respectively.
If there are questions or difficulties with the HASL/HINT/Molconn-Z installation,
please feel free to give us a call.