\documentclass[a4paper,10pt]{article}
\input{packages.tex}
\usepackage{a4wide}
\input{macro.tex}


\title{3DFClib: a collection  of discrete 3D Frictional Contact (3DFC) problems}
\author{3DFClib team}
\date{\today}

\begin{document}

\maketitle

\tableofcontents


\section*{Purpose of the document}



The goal of this work is to set up a collection of 3D Frictional Contact (3DFC) problems. The collection will provide a standard framework for testing available and new algorithms for solving discrete frictional contact problems. 

\section*{Notation}
Let us denote by the integer $n_c$ the number of contacts. The integer $n$ is the number of degree of freedom of the system and $m = 3 n_c$ the number of unknown variables at contacts.

For each contact $\alpha \in \{1,\ldots n_c\}$, the  local velocity  is denoted by $u^\alpha \in \RR^3$. Its normal part  is denoted by $u_\n^{\alpha}\in \RR$ and its tangential part $u_\t\in\RR^2$. One gets
\begin{equation}
  \label{eq:contactvelocity}
  u^\alpha =\left[
  \begin{array}{c}
    u^\alpha_{\n} \\
    u^\alpha_{\t}   
  \end{array}\right]
\end{equation}

The vector $u$ collects all the local velocity at each contact
\begin{equation}
  \label{eq:normal}
  u = [[u^\alpha]^T, \alpha = 1\ldots n_c]^T
\end{equation}
respectively for the normal part $u_\n$
\begin{equation}
  \label{eq:tangent}
  u_\n = [ u^\alpha_{\n}, \alpha = 1\ldots n_c]^T,
\end{equation}
and its tangential a part as 
\begin{equation}
  \label{eq:tangent}
  u_\t = [ [u^\alpha_{\t}]^T, \alpha = 1\ldots n_c]^T.
\end{equation}

for a contact $\alpha $, the modified local velocity, denoted by $\hat u^\alpha $, is defined by
\begin{equation}
  \label{eq:modified}
  \hat u^\alpha = u^\alpha +\left[
  \begin{array}{c}
    \mu \|u^\alpha_\t\| \\
    0 \\
    0
  \end{array}\right]^T
\end{equation}
The vector $\hat u$ collects all the modified local velocity at each contact
\begin{equation}
  \label{eq:normal}
  \hat u = [[\hat u^\alpha]^T, \alpha = 1\ldots n_c]^T
\end{equation}

For each contact $\alpha$, the reaction vector $r^\alpha\in \RR^3$ is also decomposed in its normal part $r_\n^{\alpha}\in \RR$ and the tangential part $r_\t\in\RR^2$ as
\begin{equation}
  \label{eq:contactvelocity}
  r^\alpha = \left[
  \begin{array}{c}
    r^\alpha_{\n} \\
    r^\alpha_{\t}   
  \end{array}\right]
\end{equation}
The Coulomb friction cone for a  contact $\alpha$ is defined by 
\begin{equation}
  \label{eq:CCC}
  C_{\mu^\alpha}^{\alpha}  = \{r^\alpha, \|r^\alpha_\t \| \leq \mu^\alpha |r^\alpha_\n| \}
\end{equation}
and the set $C^{\alpha,\star}_{\mu^\alpha}$ is its dual.


The set $C_{\mu}$ is the cartesian product of Coulomb's friction cone at each contact, that 
\begin{equation}
  \label{eq:CC}
  C_{\mu} = \prod_{\alpha=1\ldots n_c} C_{\mu^\alpha}^{\alpha} 
\end{equation}
and $C^\star_{\mu}$ is dual.
\clearpage
\section{Linear discrete problems with Coulomb's friction and unilateral contact}


\newtheorem{definition}{Definition}

\subsection{Reduced discrete problem. 3DFC problem}
\begin{definition}[Frictional contact problem (3DFC)]\index{mFC3D}
  Given
  \begin{itemize}
    \item a symmetric positive semi--definite  matrix ${W} \in \nbR^{m \times m}$
    \item a vector $ {q} \in \nbR^m$,
    \item a vector of coefficients of friction $\mu \in \RR^{n_c}$
  \end{itemize}
 the  3DFC problem  is to find two vectors $u\in\RR^m$ and $r\in \RR^m$, denoted by $\mathrm{3DFC}(W,q,\mu)$  such that
\begin{equation}\label{eq:lcp1}
  \begin{cases}
    \hat u = W r + q +\left[
      \left[\begin{array}{c}
          \mu^\alpha \|u^\alpha_\t\|\\
          0 \\
          0
        \end{array}\right]^T, \alpha = 1 \ldots n_c
    \right]^T \\ \\
    C^\star_{\mu} \ni {\hat u} \perp r \in C_{\mu}
  \end{cases}
\end{equation}
\qed
\end{definition}

\subsection{Global/local discrete problem. G3DFC problem}
\begin{definition}[Global 3DFrictional contact  problem (G3DFC)]\index{G3DFC}
  Given
  \begin{itemize}
    \item a symmetric positive definite matrix ${M} \in \nbR^{n \times n}$
    \item a vector $ {f} \in \nbR^n$,
    \item a matrix  ${H} \in \nbR^{n \times m}$
    \item a vector $w \in \RR^{m}$,
    \item a vector of coefficients of friction $\mu \in \RR^{n_c}$
  \end{itemize}
 the Global 3DFC problem  is to find three vectors $ {v} \in \nbR^n$, $u\in\RR^m$ and $r\in \RR^m$, denoted by $\mathrm{G3DFC}(M,H,f,w,\mu)$  such that
\begin{equation}\label{eq:lcp1}
  \begin{cases}
    M v = {H} {r} + {f} \\ \\
    \hat u = H^T v + w +\left[
      \left[\begin{array}{c}
        \mu^\alpha \|u^\alpha_\t\|\\
        0 \\
        0
      \end{array}\right]^T, \alpha = 1 \ldots n_c
\right]^T \\ \\
    C^\star_{\mu} \ni {\hat u} \perp r \in C_{\mu}
  \end{cases}
\end{equation}
\qed
\end{definition}




\subsection{Global  Mixed Frictional contact problem (GM3DFC)}
\begin{definition}[Global  Mixed Frictional contact problem (GM3DFC)]\index{GN3DFC}
  Given
  \begin{itemize}
    \item a symmetric positive definite matrix ${M} \in \nbR^{n \times n}$
    \item a vector $ {f} \in \nbR^n$,
    \item a matrix  ${H} \in \nbR^{n \times m}$
    \item a matrix  ${G} \in \nbR^{n \times p}$
     \item a vector $w \in \RR^{m}$,
     \item a vector $b \in \RR^{p}$,
    \item a vector of coefficients of friction $\mu \in \RR^{n_c}$
  \end{itemize}
 the Global Mixed 3DFC problem  is to find four vectors $ {v} \in \nbR^n$, $u\in\RR^m$, $r\in \RR^m$ and $\lambda \in \RR^p$ denoted by $\mathrm{GM3DFC}(M,H,G,w,b,\mu)$  such that
\begin{equation}\label{eq:lcp1}
  \begin{cases}
    M v = {H} {r} + G\lambda + {f} \\ \\
    G^T v +b =0 \\ \\
    \hat u = H^T v + w +\left[
      \left[\begin{array}{c}
        \mu \|u^\alpha_\t\|\\
        0 \\
        0
      \end{array}\right]^T, \alpha = 1 \ldots n_c
\right]^T \\ \\
    C^\star_{\mu} \ni {\hat u} \perp r \in C_{\mu}
  \end{cases}
\end{equation}
\qed
\end{definition}
\subsection{ Mixed Frictional contact problem (M3DFC)}
\begin{definition}[Mixed 3DFrictional contact  problem (M3DFC)]\index{M3DFC}
  Given
  \begin{itemize}
    \item a positive semi--definite matrix  ${W} \in \nbR^{m \times m}$
    \item a matrix  ${V} \in \nbR^{m \times p}$
    \item a matrix  ${R} \in \nbR^{p \times p}$
     \item a vector $q \in \RR^{m}$,
     \item a vector $s \in \RR^{p}$,
    \item a vector of coefficients of friction $\mu \in \RR^{n_c}$
  \end{itemize}
 the  Mixed 3DFC problem  is to find three vectors $u\in\RR^m$, $r\in \RR^m$ and $\lambda \in \RR^p$ denoted by $\mathrm{M3DFC}(R,V,W,q,s,\mu)$  such that
\begin{equation}\label{eq:lcp1}
  \begin{cases}
    V^T {r} + R \lambda + s = 0 \\ \\
    \hat u = W {r}    + V\lambda  + q +\left[
      \left[\begin{array}{c}
        \mu^\alpha \|u^\alpha_\t\|\\
        0 \\
        0
      \end{array}\right]^T, \alpha = 1 \ldots n_c
\right]^T \\ \\
    C^\star_{\mu} \ni {\hat u} \perp r \in C_{\mu}
  \end{cases}
\end{equation}
\qed
\end{definition}



\subsection{Remarks}


Note that the previous problems may be an instance of quasi-static problems: the matrix $M$ plays the role of the stiffness matrix and the vector $u$ is a position or a displacement. 
\section{Measuring errors}

\section{Detailed implementation}

\subsection{File format}

The proposed file format for storing and managing data is the HDF5 data format\\
 \url{http://www.hdfgroup.org/HDF5}


\noindent The data name should be defined as close as possible to the definition of this document.

\subsection{Matrix storage}
Three matrix storages are considered :
\begin{enumerate}
\item dense format
\item sparse format : row compressed format
\item sparse matrix of 3x3 dense matrices. (sparse block matrix)
\end{enumerate}

The last format could be deduced from the standard sparse format. To be discussed. 


\subsection{C implementation}

A C implementation will be proposed for reading and writing each of 3DFC problems into HDF5 files.

The storage of dense matrices will be in column major mode (FORTRAN mode).
\clearpage

\section{Additional  description of the problems}

The following additional information should be added in a reference document and in the HDF5 file.


\begin{itemize}
\item \verb?TITLE? : a title for the problem
\item \verb?DESCRIPTION? : The field of application. Short description on how the problem is generated.
\item \verb?MATRIX_INFO? : The sparsity and the conditioning of the matrices.
\item \verb?MATH_INFO? : Existence, uniqueness of solutions.
\item \ldots
\end{itemize}

\noindent The following data can be optionally added in the HDF5 file
\begin{itemize}
\item \verb?SOLUTION? : A reference solution
\item \verb?INITIAL_GUESS? : A initial guess
\item \ldots
\end{itemize}



\section{List of problems}

\end{document}



%%% Local Variables: 
%%% mode: latex
%%% TeX-master: t
%%% End: 
