Changeset 687

Show
Ignore:
Timestamp:
12/05/06 21:35:06 (2 years ago)
Author:
peter
Message:

Merge changes from mainline upto r685.

This branch is now fully merged. Any remaining problems in doxygen, scripts
and tsuite should now be resolved.

Location:
branches/newmole
Files:
14 removed
142 modified
38 copied

Legend:

Unmodified
Added
Removed
  • branches/newmole/doxygen/Doxyfile

    r432 r687  
    1 # Doxyfile 1.4.6 
     1# Doxyfile 1.4.7 
    22 
    33#--------------------------------------------------------------------------- 
     
    8383# configuration options related to the input files 
    8484#--------------------------------------------------------------------------- 
    85 INPUT                  = C:/projects/cloudy/trunk/source_hot 
     85INPUT                  = C:/projects/Cloudy/trunk/source 
    8686FILE_PATTERNS          = *.c \ 
    8787                         *.cc \ 
     
    130130REFERENCED_BY_RELATION = YES 
    131131REFERENCES_RELATION    = YES 
     132REFERENCES_LINK_SOURCE = YES 
    132133USE_HTAGS              = NO 
    133134VERBATIM_HEADERS       = YES 
     
    242243INCLUDED_BY_GRAPH      = YES 
    243244CALL_GRAPH             = YES 
     245CALLER_GRAPH           = NO 
    244246GRAPHICAL_HIERARCHY    = YES 
    245247DIRECTORY_GRAPH        = YES 
  • branches/newmole/doxygen/readme_doxygen.txt

    r432 r687  
    1 to change options in setup file (Doxyfile) do  
     1Readme for Doxygen 
     2 
     3quick start:  
     4create the documentation with the command 
     5doxygen Doxyfile 
     6 
     7Doxygen is a source code documentation system that is widely used in open source projects.  It is available on the web at http://www.stack.nl/~dimitri/doxygen/  You will need a copy of the doxygen executable on your system to create the documentation. 
     8 
     9Doxygen must be able to find the open source program graphviz that is used to create equations from embedded LaTex.  Download graphviz from http://www.graphviz.org/  
     10 
     11This directory includes the setup file "Doxyfile" that is needed to run doxygen.  The Cloudy download does not include the output documentation it generates.  To create documentation run doxygen with the command 
     12doxygen Doxyfile 
     13in this directory.  Doxgyen will create a new html directory below this one.  The index.html file in the html directory is the top of the documentation. 
     14 
     15The manual for doxygen can be found at http://www.stack.nl/~dimitri/doxygen/download.html#latestman 
     16The full description of its commands is under "Special Commands" in the "Reference Manual" section. 
     17 
     18The document file doxygen_setup_style.txt in this directory contains some notes on how Cloudy uses doxygen. 
     19 
     20============================================== 
     21 
     22the file Doxyfile was created with the gui that is lauchned with the command  
    223doxywizard Doxyfile 
    3 mode - optimize for C output 
     24this is used to set the parameters for the generated output. 
    425 
    5 expert tab has many options  
    6  
    7 to run doxygen and create output do 
    8 doxygen Doxyfile 
    9 in this directory 
    10  
    11 check whether INPUT parameter in Doxyfile is set to source_hot or source - this changes 
    12 source is the archived version and source_hot is the local development version 
    13  
    14 to generate the ouput doxygen also needs graphviz, another open source app.  graphviz needs 
    15 to be on the path for doxygen to find it. 
    16  
    17 Doxyfile is set up to create only html output.  other options are possible.  The html will be 
    18 in the html directory below this main directory. 
    19  
    20 Within the codebase, doxygen markup is fully contained in the headers.  All doxygen special comment blocks are using the "C style" markup.  Special comment blocks are indicated by /**.  Commands are indicated with the with the syntax \command.  All comment blocks are immediately before what they describe, with the exception of some struct members, where the comment immediately follows ("/**<" syntax).  Within special commente blocks, the \, @, &, $, #, <, >, % characters must be escaped using a preceeding \ 
    21  
    22 The following commands are in use: 
    23 \file <filename> (description)  - description for a file, will appear in the output above any descriptions of items contained in the file. 
    24 \verbatim  - Doxygen outputs text enclosed in verbatim/endverbatim tags exactly (ie, preserving whitespace and newlines) 
    25 \endverbatim 
    26 \param [in|out|in,out] <parameter name> (description) - describe a parameter of a function.  Parameter name is the name of the variable and does not include type.  [in|out|in,out] is optional. 
    27 \post (description) - describe the post conditions for a function 
    28 \return (description) - describe what the function returns (in output "Returns "+description is printed) 
    29 \author Joe Blow 
    30  
    31 latex in line  
    32 \f$ - same as in line $  - opposite is another \f$ 
    33  
    34 The ideal declaration should look like the following: 
    35 ======================================================= 
    36  
    37  /** 
    38   routine_name This is the long description of what routine_name does, appears after  
    39         the function name 
    40   \brief this is routine brief description - only 1 line long 
    41   \param iz  a description of what parameter 1 is for 
    42   \param [in] in  a description of what parameter 2 is for 
    43   \param [out] *out description 
    44   \author Joe Blow 
    45   \return explain the return value 
    46  */  
    47 double routine_name(long int iz,  
    48   long int in , 
    49   double *out ); 
    50  
    51 ======================================================= 
    52  
    53 The manual for doxygen can be found: http://www.stack.nl/~dimitri/doxygen/download.html#latestman 
    54 The full description of these commands and all others are under "Special Commands" in the "Reference Manual" section. 
     26Good luck, 
     27Gary Ferland 
     28http://www.nublado.org  
  • branches/newmole/scripts/dayslow_master.pl

    r324 r687  
    6767#$exe_org = "$c:/projects/cloudy/trunk/release/trunk.exe"; 
    6868# use fast gcc exe 
    69 $exe_org = "$c:/projects/cloudy/trunk/gcc/release/cloudy_gcc.exe"; 
     69$exe_gcc = "$c:/projects/cloudy/trunk/gcc/release/cloudy_gcc.exe"; 
     70$exe_icl = "$c:/projects/cloudy/trunk/icl/release/cloudy_icl.exe"; 
     71$exe_org = $exe_icl; 
    7072system("cp $exe_org $out_dir "); 
    7173#$exe = "c:/projects/Cloudy/trunk/release/trunk.exe"; 
    7274#$exe = "$out_dir"."trunk.exe"; 
    73 $exe = "$out_dir"."cloudy_gcc.exe"; 
     75$exe_gcc = "$out_dir"."cloudy_gcc.exe"; 
     76$exe_icl = "$out_dir"."cloudy_icl.exe"; 
     77$exe = $exe_icl; 
    7478printf(ioLOG "exe is $exe\n"); 
    7579 
  • branches/newmole/scripts/nightly_copy_files_original.pl

    r313 r687  
    101101print(" moved to unix target source directory, about to delete all files\n"); 
    102102# remove the old source files 
    103 unlink <*.c> ;  
     103unlink <*.cpp> ;  
    104104# 
    105105# -------- 
     
    499499        copy( $input  , $output); 
    500500} 
    501 # we have now clobbered the path.c file, and need to copy a valid one from 1 dir up 
    502 copy( "u:/cloudy/trunk/path.c" , "u:/cloudy/trunk/source/path.c" ); 
     501# we have now clobbered the path.cpp file, and need to copy a valid one from 1 dir up 
     502copy( "u:/cloudy/trunk/path.cpp" , "u:/cloudy/trunk/source/path.cpp" ); 
    503503 
    504504# move to pc unix tsuite directory 
  • branches/newmole/scripts/nightly_copy_source.pl

    r367 r687  
    6363print(" moved to unix target source directory, about to delete all files\n"); 
    6464# remove the old source files 
    65 unlink <*.c> ;  
     65unlink <*.cpp> ;  
    6666 
    6767 
     
    109109        copy( $input  , $output); 
    110110} 
    111 # we have now clobbered the path.c file, and need to copy a valid one from 1 dir up 
     111# we have now clobbered the path.cpp file, and need to copy a valid one from 1 dir up 
    112112# so that version on unix cluster will compile & execute 
    113 copy( "u:/cloudy/trunk/path.c" , "u:/cloudy/trunk/source/path.c" ); 
     113copy( "u:/cloudy/trunk/path.cpp" , "u:/cloudy/trunk/source/path.cpp" ); 
    114114 
    115115# ---------------------------------------------------------- 
  • branches/newmole/scripts/readme.txt

    r454 r687  
    11=============================================================== 
     2NIGHTLY RUN OF TEST SUITE 
     3 
     4nightly_run_tsuite.pl - main script on my machine 
     5        starts first and must end last since launches checks 
     6        runs second group of sims (second slave does first, a point of confusion) 
     7        copies current.exe to tsuite directory for second script to use 
     8        creates log fil autorun.log 
     9        checks results 
     10        sends email announcing results 
     11        calls ir_extime.pl to track exec time 
     12        calls promote_last_good to promote last to last_good if all is ok 
     13        autorun.log 
     14 
     15nightly_runL_tsuite_part2.pl  - second script 
     16        runs first block sims across network 
     17        uses current.exe in tsuite dir which was copied there by first script 
     18        autorun2.log log file in auto directory 
     19 
     20LOAD LEVELING 
     21$nmod_calc - var controls number of sims in each half 
     22        adjust in each script to get load leveling right 
     23        decrease value to have master end later 
     24 
     25=============================================================== 
     26 
    227NIGHTLY COPY OF FILES ACROSS CLUSTER 
    328nightly_copy_files.pl 
     
    1944 
    2045=============================================================== 
    21 NIGHTLY RUN OF TEST SUITE 
    22 main script on my machine 
    23         nightly_run_tsuite.pl - script name 
    24         starts first and must end last since launches checks 
    25         runs second group of sims (slabe does first, a point of confusion) 
    26         copies current.exe to tsuite directory for second script to use 
    27         creates log fil autorun.log 
    28         checks results 
    29         sends email announcing results 
    30         calls ir_extime.pl to track exec time 
    31         calls promote_last_good to promote last to last_good if all is ok 
    32  
    33 second script 
    34         nightly_runL_tsuite_part2.pl  <- runs first block sims across network 
    35         uses current.exe in tsuite dir which was copied there by first script 
    36         log file is autorun2.log in auto directory 
    37  
    38 $nmod_calc - var controls number of sims in each half 
    39         adjust in each script to get load leveling right 
    40  
    41 =============================================================== 
    4246 
    4347SLOW RUNS 
  • branches/newmole/source/atmdat.h

    r507 r687  
    226226        int lgCTOn; 
    227227 
    228         /** array of cross sections for photoionization of hydrogen at threshold, 
    229          * 0 is 1s, 1 is 2s, 2 is 2p, up to 400 */ 
    230         float STH[NHYDRO_MAX_LEVEL]; 
    231  
    232228        /** these are the density and temperature mesh points on the 
    233229         * original Hummer & Storey data, for H[0] and He[1], */ 
     
    254250        }       atmdat; 
    255251 
    256 /** parameters needed for D Verner's fit to cs cross sections */ 
    257 EXTERN struct PH1COM_t { 
    258         float PH1[7][30][30][6]; 
    259         }       PH1COM; 
    260  
    261  /** atmdat_phfit derive photoionization cross sectoins for first 30 elements  
    262         \param nz  
    263         \param ne  
    264         \param is  
    265         \param e  
    266         \param lghs 
    267  */  
     252float atmdat_ph1(int i, int j, int k, int l); 
     253 
     254float atmdat_s