Java CoG Kit Guide to Writing Guides

Gregor von Laszewski, Mike Hategan, and Deepti Kodeboyina

Software Version: 4_1_3
Manual version: 02/18/05
Url: http://www.cogkit.org/release/4_1_3/manual/install.pdf
Url: http://www.cogkit.org/release/4_1_3/manual/install/install.html
Last update: September 3, 2005

Contents

1 About this Document
 1.1 Viewing
 1.2 Format
2 Registration
3 Document Processing with LATEX
 3.1 Format
 3.2 Listings
 3.3 Descriptions
 3.4 Itemizations
 3.5 Enumerations
 3.6 Sections
 3.7 Graphics
  3.7.1 PDF
  3.7.2 Example
  3.7.3 PDF2PS
 3.8 Contributing to the documentation
 3.9 Writing a Howto
 3.10 FAQ
 3.11 Hyperlinks
 3.12 html2txt
 3.13 html2latex
 3.14 word2latex
 3.15 Latex2html under cygwin
 3.16 Bibtex
  3.16.1 Using Bibtex
  3.16.2 Exporting pictures in PPT
 3.17 Increasing the Latex parameters
 3.18 Includes and Inputs
4 Manpages
5 Labels for Floats
Appendix
A Documentation
 A.1 Java CoG Kit Guides
 A.2 Java CoG Kit Guides Under Construction
 A.3 API Documentation
B Downloads
C Availability of the Document
D Bugs
E Administrative Contact

 

1 About this Document

This document includes basic information about writing guides for the Java CoG Kit.

1.1 Viewing

The best way to read this document is to use the PDF version and read it with Adobe Acrobat Reader. Please make sure you configure Adobe Acrobat Reader appropriately so you can follow hyperlinks. This is the case if you follow the default installation. Acrobat Reader is available at http://www.adobe.com/products/acrobat/readermain.html. Because the hyperlinks are not available in the printed form of this manual and we support saving our environment we strongly discourage printing this document.

We recommend that you save this manual locally on your machine and use Acrobat Reader. This has the advantage that you do not lose your anchor points while switching back and forth between different hyperlinks. An HTML version of this manual is planed, but not available yet.

1.2 Format

We have augmented the document with some comments at places where we found issues. Our intend is to address these issues in a future release. The comments are marked by the icon  to do  and the name of the person that will work on the removal of the issue.

2 Registration

Please be a team player and support us indirectly by registering with us or reporting your use of the Java CoG Kit. Although this software is free, we still need to justify to our funders the usefulness of the projects. If you want to help us with our efforts please take a few seconds to complete this information. We do not use this information for other purposes. If you have special needs or concerns please contact gregor@mcs.anl.gov. The registration form can filled out in a variety of formats. The online form can be found at

http://www.cogkit.org/register

This form is available also as ASCII text at

http://www.cogkit.org/register/form.txt

which you can FAX to

Gregor von Laszewski, Fax: 630 252 1997

 

3 Document Processing with LATEX

In order to produce high quality documentation we recommend the most marvellous LATEX  program which is in more detailed described in Appendix 3. However, installing or knowing LATEXis not necessary for performing any programming described within this manual. In case you like to provide your own section to this manual, it is recommended that you would provide it in LATEX  to reduce the time for the integration in the manual. The TEXarchive has distributions for a variety of platforms, from which MiKTeX, and tetex are the most notable.

TEX
http://www.ctan.org
tetex
http://www.tetex.org
MiKTeX
http://www.miktex.org

We have chosen LATEX  for maintaining this manual. Although, there are many good reasons for using WYSIWYG tools such as MsWord, we found that they were not adequate for maintaining this document.

First, we found Word to be highly unreliable, inflexible and slow while editing large documents.Second, we observed that many of our core contributors form the Linux community and therefore do not have an easy access to Word. Third, the program is expensive and thus will eliminate contributions from student and universities that are known not to have much financial resources.

As LATEX  is freely available on the operating systems Windows (www.miktex.org) and UNIX (http://www.tug.org/teTeX/) and is trivial to install using the install script in windows and the rpm packages available for major Linux distributions it obvious choice. We tried for a while to use LyX, which runs great on Windows as well as Linux, but was unfortunately not accepted by the developers. We found that ASCII and HTML provided no real structure to easily maintain a consistent manual with advanced formatting needs.

Having said this, we like to point out that we accept contributions in any of these formats and will make sure they get integrated into the manual in an appropriate way. For example, I myself, edit the LATEXpages in MsWord to make use of the nice grammar and spellchecker. Thus you will observe that all paragraphs in the source are one single long line to make edit in MsWord very convenient.

To create this manual we are using in LATEX  the refrep style and are able to create with pdfLATEX  a very good looking output that also includes hyper references. Thus, our way of maintaining the documentation is more powerful than HTML as we can also generate an HTML manual with latex2html. Viewing the documentation for example using Adobe Acrobat Reader (http://www.adobe.com/ or a web browser helps in using the hyperlinks, on the other hand Postscript version is more appropriate for a printout on paper

All LATEX  styles and formats are checked into the documentation archive so it will be easy for you to generate the manual yourself. A Makefile is included that will make the creation of the manual trivial.

3.1 Format

PDF because of images.

3.2 Listings

We use the lstlisting style for listings. This style is very easy to use and supports syntax highlighting and framing.

The following is a simple example on how to use it. You can also include external files with lstlisting.

\begin{lstlisting}[label=L:xmlexample,  
caption={This is my caption}]  
<cog>  
  <workflow>  
        <name=’’hallo’’>  
  </workflow>  
</cog>  
\end{lstlisting}


Listing 1:Thisismycaption
 
<cog> 
  <workflow> 
        <name=hallo> 
  </workflow> 
</cog>

In case you use Java use language=Java.

 
\lstinputlisting{test.java} 
\lstinputlisting[first=10,last=50]{test.cc}

3.3 Descriptions

 
\begin{description} 
\item [Name A] this is the description for item A 
\item [Name B] this is the description for item B 
\item [Name C] this is the description for item C 
\end{description}

Name A
this is the description for item A
Name B
this is the description for item B
Name C
this is the description for item C

3.4 Itemizations

 
\begin{itemize} 
\item this is the itemize for item A 
\item this is the itemize for item B 
\item this is the itemize for item C 
\end{itemize}

3.5 Enumerations

 
\begin{enumerate} 
\item this is the itemize for item 1 
\item this is the itemize for item 2 
\item this is the itemize for item 3 
\end{enumerate}

  1. this is the itemize for item 1
  2. this is the itemize for item 2
  3. this is the itemize for item 3

3.6 Sections

 
\part{Part Headline} 
\chapter{Chapter Headline} 
\section{Section Headline} 
\subsection{Subsection Headline} 
\subsubsection{\subsubsection Headline} 
\paragraph{Paragraph Headline}

3.7 Graphics

3.7.1 PDF

Images in EPS must be converted to PDF

epstopdf file.ps

will do this. Place the images in the directory

images

use in the text

 
\FIGURE{placement} 
       {image} 
       {size in percent of the text width} 
       {caption} 
       {label}

3.7.2 Example
 
\FIGURE{htb} 
       {images/recycle1} 
       {.1} 
       {This is the recycle logo.} 
       {F:recycle}


PIC

Figure 1: This is the recycle logo.


Problems with images transferred from PDF to PS, bounding boxes seem wrong. This is a bug in office XP but works under office 2000/97


PIC

Figure 2: This is the recycle logo.


Note that the images are placed conveniently at the most convenient position. This is in my view one of the good features about LATEXas you do not have to worry about the placement at all. In case you like to refer ta an image never use phrases like as the figure below shows. Instead use the Figure 1 show the recycling logo.

 
Inseam use the Figure \ref{F:recycle} show the recycling logo.
3.7.3 PDF2PS

pdf2ps smiley.ps

3.8 Contributing to the documentation

Checkout the documentation

 
cvs checkout doc
 
doc/manual/Makefile 
doc/manual/src/manual.tex 
doc/manual/src/parts/*.tex

Executing the command

 
make

will print the files

 
doc/manual/manual.ps 
doc/manual/manual.pdf

We do not recommend to print the manual as it frequently changes and it would cause too much wastage of paper. Instead we recommend that you browse the manual online.

3.9 Writing a Howto

contribute with your own howto.

3.10 FAQ

FAQ can be written in ASCII and LATEX. We will maintain two files.

FAQ-ASCII-new.txt where yo can add new FAQs in ASCII format. From time to time these are transferred the file faq.tex in the parts directory. You can directly edit the faq.tex file if you wish. If you have difficulties with this let me know.

3.11 Hyperlinks

 
\hypertarget{FileTransferComponent}{~}

Creates a hyperlink in the text with the target FileTransferComponent.

3.12 html2txt

A Great tool to convert HTML pages to txt can be found as online service on the w3c Web page. This allows to include internal and hyperlink references, After the translation is possible to easily integrate it into this manual.

Form
http://cgi.w3.org/cgi-bin/html2txt

3.13 html2latex

A more sophisticated tool is html2latex. It is a Perl script designed to convert a properly formatted HTML file into a properly formatted LaTeX file.

Homepage
http://html2latex.sourceforge.net/

The ctan archive has a tool that we have not tried yet.

Source
http://www.ctan.org/tex-archive/support/html2latex/

3.14 word2latex

We have used for a subset of the information written in MsWord included in this document the program rtf.2latex.. First, you save the document as RTF. Than you run the translator. Finally, you need to clean up the output as not all translations performed are following the structured document processing. Also you will notice at times how much mess the control commas in word do. Thus, it is absolutely necessary to perform the cleanup. Often it is better to just save it as HTML file and than run the html2latex translator on it

Information
http://www.ctan.org/tex-archive/support/rtf2latex2e/

3.15 Latex2html under cygwin

There is a small bug in the recent latex2html distribution than needs correction in case you like to install it under cygwin. To correct the problem, follow these steps:

  1. Get the latest beta version of latex2html
  2. Be sure your cygwin has perl
  3. Get the netpbm programs for cygwin (search on google)
  4. Make sure the netpbm tools are in your path.
  5. Untar latex2html
  6. In the latex2html directory there is a file called L2hos.pm
  7. Edit this file by replacing $ˆO with ’unix’
  8. run ./configure
  9. You should be all set. Just do a make and make install
  10. While running latex2html explicitly specify a tmp directory

3.16 Bibtex

BibTeX is a program and file format designed by Oren Patashnik and Leslie Lamport in 1985 for the LaTeX document preparation system. The format is entirely character based, so it can be used by any program (although the standard character set for accents is TeX). It is field (tag) based and the BibTeX program will ignore unknown fields, so it is expandable. It is probably the most common format for bibliographies on the Internet.

3.16.1 Using Bibtex

Using Bibtex is very simple and can be obtained at the following links How to

Quick Reference It is very easy to create Bibtex entries using the Emacs editor emacs

3.16.2 Exporting pictures in PPT

Install acrobat writer on your computer

go to the image you like to convert

printpreview

chose acrobat PDFWriter

check current slide

select color

do not say scale to fit paper

OK

chose filename

repeat for all images

once this is done open acrobat writer open each pdf file and save as eps.

Although these communities are quite different we have decided to use a single manual for providing the information to all of them in order to reduce the burden on us while maintaining just one manual and make it possible for the users to find the information in a consistent manual. As the manual is maintained in LATEXit is extremely easy to create custom designed manuals while only choosing the parts of interest within he manual template.

3.17 Increasing the Latex parameters

To run this large manual you will almost need to modify the texmf.cnf file in the web2c directtory. This is most often located at /usr/share/texmf/web2c.

For convenience we have included a sampl texmf.cnf file in the tex directory.

Increase the String values.

3.18 Includes and Inputs

For Manula developers, we have added a number of convenient commands to make the handeling of contents accross different files easier.

The command

 
\FILE{filename}

adds a file icon and than name of the file that is specified as a parameter. This command can be used in a file, but you must specify the filname appropiatly as not to confuse our manual developer. In order to simplify this process, we have provided the commands

 
\Input{filename}

and

 
\Include{filename}

In case of the Include command the filename will be written out after the first occurence of the newly designed Chapter command.

 
\Chapter{filename}

Simply look in one of our files that use these feature to find out more.

Please note the capitalization in each case is important.

4 Manpages

We have included a simple manpage command that reads manpages from the man directory in the cog kit e.g. src/cog4/man. each manpage is appended the .txt extension.

 
\MANPAGE{command}

5 Labels for Floats

Labels in the document are preceeded with the first letter of the float followed by a colon.

Lists
are starting with “L:”
Figures
are starting with “F:”

References

[1]   G. von Laszewski, I. Foster, J. Gawor, and P. Lane, “A Java Commodity Grid Kit,” Concurrency and Computation: Practice and Experience, vol. 13, no. 8-9, pp. 643–662, 2001. [Online]. Available: http://www.mcs.anl.gov/~gregor/papers/vonLaszewski--cog-cpe-final.pdf

[2]   “Java CoG Kit Wiki,” 2004. [Online]. Available: http://www.cogkit.org/wiki

[3]   “Java CoG Kit Registration,” 2004. [Online]. Available: http://www.cogkit.org/register

Additional publications about the Java CoG Kit can be found as part of the vita of Gregor von Laszewski http://www-unix.mcs.anl.gov/~laszewsk/vita.pdf. Most documents are avalable online if you follow the links. In future we intend to provide this information without Gregors vita data.

If you need to cite the Java CoG Kit, please use [1].

Appendix

A Documentation

The Java CoG Kit documentation is distributed as a series of guides. These guides for version 4.1.3  include:

A.1 Java CoG Kit Guides





Short TitleAudienceDescription Format




Install All A guide to the different ways of installing the Java CoG Kit[PDF] [HTML]




Commands User A guide to the command line tools of the Java CoG Kit [PDF] [HTML]




Workflow User A guide to the Karajan Workflow [PDF] [HTML]




AbstractionsUser A guide to the Java CoG Kit abstractions API [PDF] [HTML]




MPI User A guide to execute MPI programs on the TeraGrid [PDF] [HTML]




Coding Developer A guide to the Coding rules for the Java CoG Kit [PDF] [HTML]




A.2 Java CoG Kit Guides Under Construction

More guides are under development. The following guides are not yet completed, but are listed here to help us improving these guides. Please, explore them and send us e-mail about improvement suggestions. If you like to contribute a guide yourself, please contact gregor@mcs.anl.gov.





Short Title AudienceDescription Format




Writing Guides Developer A preliminary guide to document writing guides [PDF] [HTML]




Examples User A preliminary guide to examples [PDF] [HTML]




Release ProcessDeveloper A preliminary guide to document the release process[PDF] [HTML]




A.3 API Documentation

B Downloads

Before downloading the Java CoG Kit, users should read the “Guide to Installing the Java CoG Kit” [PDF] [HTML]. We hope that you will find this guide useful to decide which bundles you need. For the more experienced user, we provide the following index.

Binary Distributions
Source Distributions
API Documentation
Module List
CVS

C Availability of the Document

The newest version of this document can be downloaded by the developers from

  1. cvs -d:pserver:anonymous@cvs.cogkit.org:/cvs/cogkit checkout manual/guide

It is not allowed to reproduce this document or the source. This documentation is copyrighted and is not distributed under the CoG Kit license.

D Bugs

We use Bugzilla for tracking bugs and for enhancement suggestions. It is located in the bugzilla.globus.org, but you may find it easier to use one of the following quick links:

E Administrative Contact

The Java CoG Kit project has been initiated and is managed by Gregor von Laszewski. To contact him, please use the information below.

Gregor von Laszewski
Argonne National Laboratory
Mathematics and Computer Science Division
9700 South Cass Avenue
Argonne, IL 60439
Phone: (630) 252 0472
Fax: (630) 252 1997
gregor@mcs.anl.gov

Index

Administrative Contact, 14

Contact, 14

Registration, 2