Fixed docs to provide examples of halo & ovrlap.

psblas3-type-indexed
Salvatore Filippone 18 years ago
parent ac77e56aa2
commit c591609d9b

@ -281,26 +281,28 @@ like Diagonal Scaling or Block Jacobi with incomplete
factorization ILU(0).
A preconditioner is held in the \hypertarget{precdata}{{\tt
psb\_prec\_type}} data structure which depends on the
\verb|psb_base_prec| reported in
figure~\ref{fig:prectype}. The \verb|psb_base_prec|
psb\_prec\_type}} data structure reported in
figure~\ref{fig:prectype}. The \verb|psb_prec_type|
data type may contain a simple preconditioning matrix with the
associated communication descriptor which may be different than the
system communication descriptor in the case of parallel
preconditioners like the Additive Schwarz one. Then the
\verb|psb_prec_type| may contain more than one preconditioning matrix
like in the case of Two-Level (in general Multi-Level) preconditioners.
The user can choose the type of preconditioner to be used by means of
the \verb|psb_precset| subroutine; once the type of preconditioning
method is specified, along with all the parameters that characterize
it, the preconditioner data structure can be built using the
\verb|psb_precbld| subroutine.
This data structure wants to be flexible enough to easily allow the
implementation of new kind of preconditioners. The values contained in
associated communication descriptor.%% which may be different than the
%% system communication descriptor in the case of parallel
%% preconditioners like the Additive Schwarz one. Then the
%% \verb|psb_prec_type| may contain more than one preconditioning matrix
%% like in the case of Two-Level (in general Multi-Level) preconditioners.
%% The user can choose the type of preconditioner to be used by means of
%% the \verb|psb_precset| subroutine; once the type of preconditioning
%% method is specified, along with all the parameters that characterize
%% it, the preconditioner data structure can be built using the
%% \verb|psb_precbld| subroutine.
%% This data structure wants to be flexible enough to easily allow the
%% implementation of new kind of preconditioners.
The values contained in
the \verb|iprcparm| and \verb|dprcparm| define tha type of
preconditioner along with all the parameters related to it; thus,
\verb|iprcparm| and \verb|dprcparm| define how the other records have
to be interpreted.
to be interpreted. This data structure is the basis of ore complex
preconditioning strategies, which are the subject of further
research.
\begin{figure}[h!]
\small
\begin{Sbox}

@ -197,8 +197,7 @@ local rows) is $|{\cal I}_i| + |{\cal B}_i| +|{\cal H}_i|$.
\begin{figure}[h]
\begin{center}
\leavevmode
\rotatebox{-90}{\includegraphics[scale=0.45]{figures/points}}
\rotatebox{-90}{\includegraphics[scale=0.65]{figures/points}}
\end{center}
\caption{Point classfication.\label{fig:points}}
\end{figure}
@ -249,7 +248,8 @@ internally defined in the PSBLAS software package:
\begin{itemize}
\item \verb|ge|: the routine is related to dense data,
\item \verb|sp|: the routine is related to sparse data,
\item \verb|cd|: the routine is related to communication descriptor (see~\ref{sec:datastruct}).
\item \verb|cd|: the routine is related to communication descriptor
(see~\ref{sec:datastruct}).
\end{itemize}
For example the \verb|psb_geins|, \verb|psb_spins| and
\verb|psb_cdins| perform the same action (see~\ref{sec:toolsrout}) on

@ -180,7 +180,7 @@ An integer value; 0 means no error has been detected.
\subroutine{psb\_precaply}{Preconditioner application routine}
\syntax{call psb\_precaply}{prec,x,y,desc\_a,info,trans,work}
\syntax{call psb\_precaply}{prec,x,desc\_a,info,trans}
\syntax*{call psb\_precaply}{prec,x,desc\_a,info,trans}
\begin{description}
\item[\bf On Entry]

@ -8,8 +8,8 @@
\subroutine{psb\_cdall}{Allocates a communication descriptor}
\syntax{call psb\_cdall}{icontxt, desc\_a, info,mg=mg,parts=parts}
\syntax{call psb\_cdall}{icontxt, desc\_a, info,vg=vg,flag=flag}
\syntax{call psb\_cdall}{icontxt, desc\_a, info,vl=vl}
\syntax*{call psb\_cdall}{icontxt, desc\_a, info,vg=vg,flag=flag}
\syntax*{call psb\_cdall}{icontxt, desc\_a, info,vl=vl}
This subroutine initializes the communication descriptor associated
with an index space. Exactly one of the optional arguments
@ -72,8 +72,8 @@ An integer value; 0 means no error has been detected.
The subroutine must conform to the following interface:
\begin{verbatim}
interface
subroutine psb_parts(glob_index,nrow,np,pv,nv)
integer, intent (in) :: glob_index,np,nrow
subroutine psb_parts(glob_index,mg,np,pv,nv)
integer, intent (in) :: glob_index,np,mg
integer, intent (out) :: nv, pv(*)
end subroutine psb_parts
end interface
@ -82,7 +82,7 @@ An integer value; 0 means no error has been detected.
\begin{description}
\item[glob\_index] The global index to be mapped;
\item[np] The number of processes in the mapping;
\item[nrow] The total number of global rows in the mapping;
\item[mg] The total number of global rows in the mapping;
\end{description}
The output arguments are:
\begin{description}
@ -267,7 +267,7 @@ Specified as: a structured data of type \spdata.
Scope:{\bf global}.\\
Type:{\bf required}.\\
Specified as: an integer value $nl\ge 0$.
\item[extype] the kiond of estension required.\\
\item[extype] the kind of estension required.\\
Scope:{\bf global}.\\
Type:{\bf optional }.\\
Specified as: an integer value

@ -13,7 +13,6 @@
linkcolor=blue]{hyperref}
\usepackage{ifthen}
\usepackage{graphicx}
\newtheorem{theorem}{Theorem}
\newtheorem{corollary}{Corollary}

Loading…
Cancel
Save