When doing your data analysis and/or studying the behavior of
a certain piece of code, you should work in your area.
If you need to change any code, kumacs or parameters you
should check it out of CVS (using appropriate library version) into
your area and make the changes.
If you have studied how your change will affect the code and it
is to become the new default version, you will need to inform the
person responsible for code in that domain and make sure that it
is alright to make the change in CVS. Then check it into CVS.
Procedure for changing and studying the behavior of a certain piece of code:
- If you want to study a particular value in a table and don't
know which code fills it, you should use one of the
Browsers
- You figure out which PAM (code) you are interested in and
then the kumacs that initialize and run that PAM are in
pams/domain/kumac/*pam_name*.kumac. The output tables
for the PAM are created in
pams/domain/kumac/create_tables_domain.kumac with a macro with
the name of the PAM.
- Now you must find out which chain variable in BFC kumac runs
that PAM. To do this you can read
Details of BFC kumac
or you can look at $STAR/kumacs/chain/bfc_util.kumac
directly and figure out the name of the chain.
- You should look at
$STAR/kumacs/chain/bfc_util.kumac
and see exactly which kumacs/macros are executed for the
chain of interest.
- Now you will know which code/kumacs you must check out and
change in order to do your particular study.
- NOTE: The init_PAM.kumac files have several different macros
and not all are called by BFC! This is because the parameter
initialization is now done by reading in default xdf files from
$STAR/params/domain and not in these kumacs. Typically we have:
- macro init - this IS called by bfc_util and is where
you should make any changes to parameters that you
need for your study
- macro fill - not called by bfc_util. This is used
to set default values of parameters when a new xdf
parameter file is to be written and is executed by
$STAR/kumacs/util/write_params.kumac
You should read the tutorial pages for more information,
especially the following: