removed documentation from public part.

This commit is contained in:
Philip Eisenlohr 2011-11-14 15:26:38 +00:00
parent db09a8b17a
commit badad00698
160 changed files with 0 additions and 367198 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 694 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

File diff suppressed because it is too large Load Diff

View File

@ -1,94 +0,0 @@
program nantest
! This file: http://ftp.aset.psu.edu/pub/ger/fortran/hdk/nan.f90
!
!====NAN.F90 illustrates what works and what doesn't when
! detecting a NaN. All but the Fortran 2003 IEEE_IS_NAN are not
! Standard Fortran.
!
! Platforms: Windows 9x/Me/NT/2000, AIX 4.3, Linux
! Compiler Notes:
! Compaq Visual Fortran 6.6C with default
! fpe settings (/fpe:3 /nocheck) and /OPTIMIZE:0
! (ISNAN is an Elemental Intrinsic Function)
! Options /fpe:0 /traceback will cause this
! program to stop with error message,
! James Giles points out that in order to actually print
! minus zero from CVF, you have to compile with the
! /assume:minus0 option.
!
! AIX XLF90 without optimization.
! (ISNAN is part of a BOS Runtime C library;
! thus ISNAN must be declared LOGICAL.)
!
! Linux Intel IFORT, use: -O0 (no optimization) and
! -assume minus0
!
! g95 supports ieee_is_nan elemental function.
!
!
! Author: hdkLESS at SPAM psu dot edu
! Date: March, 2002, January 2005, August 2006.
!
! References:
! http://www.psc.edu/general/software/packages/ieee/ieee.html
! http://homepages.borland.com/efg2lab/Mathematics/NaN.htm
! http://en.wikipedia.org/wiki/NaN
!
logical :: ISNAN
integer :: i
integer, Dimension (6) :: Iy
real, Dimension (6) :: y
integer :: IPInf, IMinf, IMZero
real :: PInf, MInf, MZero, DivNan
Character (Len=10), Dimension(6) :: NType
data NType/'+Infinity','-Infinity','-0', 'NaN','NaN','0/0'/
data IPInf/B'01111111100000000000000000000000'/ ! +Infinity
data IMInf/B'11111111100000000000000000000000'/ ! -Infinity
data IMZero/B'10000000000000000000000000000000'/ ! -0
data Iy(1)/B'01111111100000000000000000000000'/ ! +Infinity
data Iy(2)/B'11111111100000000000000000000000'/ ! -Infinity
data Iy(3)/B'10000000000000000000000000000000'/ ! -0
data Iy(4)/B'01111111100000100000000000000000'/ ! NaN
data Iy(5)/B'11111111100100010001001010101010'/ ! NaN
data Iy(6)/B'11111111110000000000000000000000'/ ! 0/0
PInf = transfer(IPinf,Pinf)
Minf = transfer(IMinf,Minf)
MZero = transfer(IMZero,MZero)
Y = transfer(IY,Y)
! Some debug options for some compilers may flag the following
! zero/zero as an exception. If so, comment out the next two lines.
DivNan=0
y(6)=DivNan/DivNan
Do i=1,6
print *, 'Test#',i,' ->',NType(i)
if (y(i).eq.PInf) print *, 'Y = Plus Infinity'
if (y(i).eq.MInf) print *, 'Y = Minus Infinity'
if (y(i).eq.Mzero) print *, 'Y = Minus Zero'
print *, 'y(Test#)=',y(i)
print *, 'Testing each of three NaN detection methods:'
! EQV -> true iff both A and B are True or iff both A and B are False.
if( (y(i) > 0.0) .EQV. (y(i) <= 0.0)) then
print *, '1) (y(Test#) > 0.0) .EQV. (y(Test#) <= 0.0)'
end if
if (y(i)/=y(i)) then
print *, '2) (y(Test#)/=(y(Test#))'
end if
! If ISNAN is available for a specific compiler, uncomment the
! following 3 lines.
! if (ISNAN(y(i))) then
! print *, '3) ISNAN(y(Test#))'
! end if
! if Fortran 2003 IEEE floating-point exception handling is available
! uncomment the following 4 lines
! use ieee_arithmetic
! if (ieee_is_nan(y(i))) then
! print *, '4) ieee_is_nan(y(Test#))'
! end if
print *, ' '
End Do
end program nantest

View File

@ -1,356 +0,0 @@
#LyX 1.6.2 created this file. For more info see http://www.lyx.org/
\lyxformat 345
\begin_document
\begin_header
\textclass scrartcl
\use_default_options true
\language english
\inputencoding auto
\font_roman default
\font_sans default
\font_typewriter default
\font_default_family default
\font_sc false
\font_osf false
\font_sf_scale 100
\font_tt_scale 100
\graphics default
\paperfontsize default
\spacing single
\use_hyperref false
\papersize letterpaper
\use_geometry true
\use_amsmath 1
\use_esint 1
\cite_engine basic
\use_bibtopic true
\paperorientation portrait
\leftmargin 2cm
\topmargin 2cm
\rightmargin 1cm
\bottommargin 2cm
\headheight 2cm
\headsep 1cm
\footskip 0.5cm
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\defskip medskip
\quotes_language english
\papercolumns 1
\papersides 1
\paperpagestyle default
\tracking_changes false
\output_changes false
\author ""
\author ""
\end_header
\begin_body
\begin_layout Title
Sorting Criterion for Slip and Twin system in HCP
\end_layout
\begin_layout Author
YunJo Ro
\end_layout
\begin_layout Standard
This document attempts to show how we sort the order of the slip and twin
system for Hex (or hcp) structure in lattice.f90.
\end_layout
\begin_layout Section
Slip system
\end_layout
\begin_layout Standard
An intersection between slip and basal plane is used in order to sort the
slip system as illustrated in Figures
\begin_inset CommandInset ref
LatexCommand ref
reference "Fig:BasalPrismSlip"
\end_inset
and
\begin_inset CommandInset ref
LatexCommand ref
reference "Fig:Pyr<a><c+a>"
\end_inset
.
Numbers in Figures
\begin_inset CommandInset ref
LatexCommand ref
reference "Fig:BasalPrismSlip"
\end_inset
and
\begin_inset CommandInset ref
LatexCommand ref
reference "Fig:Pyr<a><c+a>"
\end_inset
indicate the sequence of each slip system in
\begin_inset Quotes eld
\end_inset
lattice.f90
\begin_inset Quotes erd
\end_inset
.
In
\begin_inset Quotes eld
\end_inset
lattice.f90
\begin_inset Quotes erd
\end_inset
, No.
4 - 6 for basal and prism <a> slip do not include (Figure
\begin_inset CommandInset ref
LatexCommand ref
reference "Fig:BasalPrismSlip"
\end_inset
).
In Figure
\begin_inset CommandInset ref
LatexCommand ref
reference "Fig:Pyr<a><c+a>"
\end_inset
, pyramidal slip <c+a> was used two criterions to sort the 12 slip systems;
i) intersection between pyramidal slip plane and basal plnae, and ii) <a>
direction.
\end_layout
\begin_layout Standard
\begin_inset Float figure
placement tbph
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\align center
\begin_inset Graphics
filename figures/slipSystemForHCP.jpg
lyxscale 15
scale 18
clip
\end_inset
\begin_inset Caption
\begin_layout Plain Layout
Basal and prism <a> slip.
\end_layout
\end_inset
\begin_inset CommandInset label
LatexCommand label
name "Fig:BasalPrismSlip"
\end_inset
\end_layout
\begin_layout Plain Layout
\end_layout
\end_inset
\begin_inset Float figure
placement tbph
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\align center
\begin_inset Graphics
filename figures/slipSystemForHCP-pyr.jpg
lyxscale 10
scale 18
clip
\end_inset
\begin_inset Caption
\begin_layout Plain Layout
Pyramical <a> and <c+a> slip.
\end_layout
\end_inset
\begin_inset CommandInset label
LatexCommand label
name "Fig:Pyr<a><c+a>"
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Newpage clearpage
\end_inset
\end_layout
\begin_layout Section
Twin system
\end_layout
\begin_layout Standard
An intersection between twin and basal plane is used in order to sort the
twin system as illustrated in Figures
\begin_inset CommandInset ref
LatexCommand ref
reference "Fig:TwinType1"
\end_inset
and
\begin_inset CommandInset ref
LatexCommand ref
reference "Fig:TwinType2"
\end_inset
.
Numbers in Figures
\begin_inset CommandInset ref
LatexCommand ref
reference "Fig:TwinType1"
\end_inset
and
\begin_inset CommandInset ref
LatexCommand ref
reference "Fig:TwinType2"
\end_inset
indicate the sequence of each twin system in
\begin_inset Quotes eld
\end_inset
lattice.f90
\begin_inset Quotes erd
\end_inset
.
\end_layout
\begin_layout Standard
\begin_inset Float figure
placement tbph
wide false
sideways false
status open
\begin_layout Plain Layout
\align center
\begin_inset Graphics
filename figures/twinSystemForHCP-1.jpg
lyxscale 15
scale 18
clip
\end_inset
\begin_inset Caption
\begin_layout Plain Layout
Tensile and compressive twin type 1
\end_layout
\end_inset
\begin_inset CommandInset label
LatexCommand label
name "Fig:TwinType1"
\end_inset
\end_layout
\end_inset
\begin_inset Float figure
placement tbph
wide false
sideways false
status open
\begin_layout Plain Layout
\align center
\begin_inset Graphics
filename figures/twinSystemForHCP-2.jpg
lyxscale 15
scale 18
clip
\end_inset
\begin_inset Caption
\begin_layout Plain Layout
Tensile and compressive twin type 2
\end_layout
\end_inset
\begin_inset CommandInset label
LatexCommand label
name "Fig:TwinType2"
\end_inset
\end_layout
\end_inset
\end_layout
\end_body
\end_document

View File

@ -1,74 +0,0 @@
%% LyX 1.6.2 created this file. For more info, see http://www.lyx.org/.
%% Do not edit unless you really know what you are doing.
\documentclass[english]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage[letterpaper]{geometry}
\geometry{verbose,tmargin=2cm,bmargin=2cm,lmargin=2cm,rmargin=1cm,headheight=2cm,headsep=1cm,footskip=0.5cm}
\usepackage{graphicx}
\usepackage{babel}
\begin{document}
\title{Sorting Criterion for Slip and Twin system in HCP}
\author{YunJo Ro}
\maketitle
This document attempts to show how we sort the order of the slip and
twin system for Hex (or hcp) structure in lattice.f90.
\section{Slip system }
An intersection between slip and basal plane is used in order to sort
the slip system as illustrated in Figures \ref{Fig:BasalPrismSlip}
and \ref{Fig:Pyr<a><c+a>}. Numbers in Figures \ref{Fig:BasalPrismSlip}
and \ref{Fig:Pyr<a><c+a>} indicate the sequence of each slip system
in {}``lattice.f90''. In {}``lattice.f90'', No. 4 - 6 for basal
and prism <a> slip do not include (Figure \ref{Fig:BasalPrismSlip}).
In Figure \ref{Fig:Pyr<a><c+a>}, pyramidal slip <c+a> was used two
criterions to sort the 12 slip systems; i) intersection between pyramidal
slip plane and basal plnae, and ii) <a> direction.
%
\begin{figure}[tbph]
\begin{centering}
\includegraphics[clip,scale=0.18]{figures/slipSystemForHCP}\caption{Basal and prism <a> slip.}
\label{Fig:BasalPrismSlip}
\par\end{centering}
\end{figure}
%
\begin{figure}[tbph]
\centering{}\includegraphics[clip,scale=0.18]{figures/slipSystemForHCP-pyr}\caption{Pyramical <a> and <c+a> slip.}
\label{Fig:Pyr<a><c+a>}
\end{figure}
\clearpage{}
\section{Twin system}
An intersection between twin and basal plane is used in order to sort
the twin system as illustrated in Figures \ref{Fig:TwinType1} and
\ref{Fig:TwinType2}. Numbers in Figures \ref{Fig:TwinType1} and
\ref{Fig:TwinType2} indicate the sequence of each twin system in
{}``lattice.f90''.
%
\begin{figure}[tbph]
\centering{}\includegraphics[clip,scale=0.18]{figures/twinSystemForHCP-1}\caption{Tensile and compressive twin type 1}
\label{Fig:TwinType1}
\end{figure}
%
\begin{figure}[tbph]
\centering{}\includegraphics[clip,scale=0.18]{figures/twinSystemForHCP-2}\caption{Tensile and compressive twin type 2}
\label{Fig:TwinType2}
\end{figure}
\end{document}

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 970 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 MiB

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 MiB

View File

@ -1,302 +0,0 @@
\documentclass{beamer}
\usepackage{amsmath,amssymb,amsfonts}
\usepackage{bm}
\usepackage{array}
%\include{Shortcuts}
\newcommand{\ie}{\textit{i.e.}}
\newcommand{\eg}{\textit{e.g.}}
\newcommand{\vect}[1]{\ensuremath{\mathbf{#1}}}
\newcommand{\tensII}[1]{\ensuremath{\mathbf{#1}}}
\newcommand{\tensIV}[1]{\ensuremath{\mathbb{#1}}}
\newcommand{\slip}[1]{\ensuremath{#1^{\alpha}}}
\newcommand{\slipslip}[1]{\ensuremath{#1^{\alpha\alpha}}}
\newcommand{\slipt}[1]{\ensuremath{#1^{\tilde\alpha}}}
\newcommand{\slipslipt}[1]{\ensuremath{#1^{\alpha\tilde\alpha}}}
\newcommand{\twin}[1]{\ensuremath{#1^{\beta}}}
\newcommand{\twint}[1]{\ensuremath{#1^{\tilde\beta}}}
\newcommand{\twintwint}[1]{\ensuremath{#1^{\beta\tilde\beta}}}
\newcommand{\sliptwin}[1]{\ensuremath{#1^{\alpha\beta}}}
\newcommand{\twinslip}[1]{\ensuremath{#1^{\beta\alpha}}}
\usetheme{mpie}
\setbeamertemplate{blocks}[rounded][shadow=true]
\title{Dislocation glide and deformation twinning as implemented in DisloTwin.f90}
\date{MSU Twin Meeting, D\"usseldorf -- October 6\textsuperscript{th}, 2009}
\begin{document}
\frame{\titlepage}
\section[Outline]{}
\frame{\tableofcontents}
\section{Microstructure Parametrization}
\frame {
\frametitle{}
\begin{block}{\begin{center}PART I\end{center}} \begin{center}Microstructure Parametrization\end{center} \end{block}
}
\subsection{Dislocation structure}
\frame {
\frametitle{Dislocation structure}
\begin{block}{Internal variables:}
\begin{itemize}
\item<1-> $\slip N$ edge dislocation densities $\slip\varrho_{\text{edge}}$
\item<1-> $\slip N$ dipole densities $\slip\varrho_{\text{dipole}}$
\end{itemize}
\end{block}
\begin{block}{Derived measures:}
\begin{itemize}
\item<1-> $\slip\tau_{\text{c}}$ threshold shear stress fordislocation glide
\item<1-> $\slip\lambda$ mean distance between 2 obstacles seen by a dislocation
\end{itemize}
\end{block}
}
\subsection{Mechanical twins}
\frame {
\frametitle{Morphology and topology of mechanical twins}
\begin{block}{Internal variables:}
\begin{itemize}
\item<1-> $\twin N$ twin volume fractions $\twin f$
\item<1-> ($\twin N$ twin mean thicknesses $\twin s$)
\end{itemize}
\end{block}
\begin{block}{Derived measures:}
\begin{itemize}
\item<1-> $f$ total twin volume fraction
\item<1-> $\twin l=\frac{\twin s\,(1-f)}{\twin f}$ mean distance between neighboring twins $\beta$
\item<1-> $\twin\tau_{\text{c}}$ threshold shear stress for twinning
\item<1-> $\twin\lambda$ mean distance between 2 obstacles seen by a growing twin
\end{itemize}
\end{block}
}
\subsection{Threshold stresses}
\frame {
\frametitle{Threshold stress for glide activity}
\begin{block}{Threshold stress $\slip\tau_{\text{c}}$:}
\begin{equation}
\slip\tau_{\text{c}} = k_{\text{friction}}\,G_{\text{iso}}\,\sqrt{c}\,+\,G_{\text{iso}}\,\slip b\,\sqrt{\sum_{\tilde\alpha\,=\,1}^{\slip N}\,\slipslipt\xi\,(\slipt\varrho_{\text{edge}} + \slipt\varrho_{\text{dipole}})} \nonumber
\end{equation}
\end{block}
\begin{block}{with:}
\begin{itemize}
\item<1-> $G_{\text{iso}}$ isotropic shear modulus
\item<1-> $c$ carbon concentration (at.\%)
\item<1-> $k_{\text{friction}}$ adjusting parameter for solute atome friction stress
\item<1-> $\slip b$ Burgers vector of slip system $\alpha$
\item<1-> $\slipslipt\xi$ interaction strength (Kubin et al. 2008)
\end{itemize}
\end{block}
}
\frame {
\frametitle{Threshold stress for twinning:}
\begin{block}{Threshold stress $\twin\tau_{\text{c}}$:}
\begin{equation}
\twin\tau_{\text{c}} = \frac{\gamma_{\text{sfe}}}{3\,\twin b}\,+\,\frac{G_{\text{iso}}\,\twin b}{L_0} \nonumber
\end{equation}
\end{block}
\begin{block}{with:}
\begin{itemize}
\item<1-> $\gamma_{\text{sfe}}$ temperature-dependant stacking fault energy
\item<1-> $\twin b$ Burgers vector of twin system $\beta$
\item<1-> $L_0$ twin source length
\end{itemize}
\end{block}
}
\subsection{Mean free distances}
\frame {
\frametitle{Dislocation mean free distance between two obstacles}
\begin{block}{Harmonic averaging:}
\begin{eqnarray}
\frac{1}{\slip\lambda} & = &
\frac{1}{d_{\text{grain}}}
\,+\,\frac{\sqrt{\slip\varrho_{\text{edge}}\,+\,\slip\varrho_{\text{dipole}}}}{k_\lambda}
\,+\,\frac{1}{\sliptwin d} \nonumber \\
& = &
\frac{1}{d_{\text{grain}}}
\,+\,\frac{\sqrt{\slip\varrho_{\text{edge}}\,+\,\slip\varrho_{\text{dipole}}}}{k_\lambda} \,+\,\sum_{\beta\,=\,1}^{\slip{N}}\,\sliptwin{I}\,\frac{1}{\twin l} \nonumber
\end{eqnarray}
\end{block}
\begin{block}{with:}
\begin{itemize}
\item<1-> $d_{\text{grain}}$ grain size
\item<1-> $\sliptwin{I}$ slip--twin interactions (0 if $\alpha$,$\beta$ coplanars or cross-slip; 1 otherwise)
\end{itemize}
\end{block}
}
\frame {
\frametitle{Twin mean free distance between two obstacles}
\begin{block}{Harmonic averaging:}
\begin{eqnarray}
\frac{1}{\twin\lambda} & = & \frac{1}{d_{\text{grain}}} + \dfrac{1}{\twin d} \nonumber \\
& = & \dfrac{1}{d_{\mathrm{grain}}} + \sum_{\tilde\beta\,=\,1}^{\twin{N}}\,\twintwint{I}\,\dfrac{1}{\twint l} \nonumber
\end{eqnarray}
\end{block}
\begin{block}{with:}
\begin{itemize}
\item<1-> $\twintwint{I}$ twin--twin interactions (0 if $\beta$,$\tilde\beta$ coplanars; 1 otherwise)
\end{itemize}
\end{block}
}
\section{Kinetics}
\frame {
\frametitle{}
\begin{block}{\begin{center}PART II\end{center}} \begin{center}Kinetics\end{center} \end{block}
}
\subsection{Thermally-activated dislocation motion}
\frame {
\frametitle{Orowan's kinetics}
\begin{block}{Shear rate $\slip{\dot\gamma}$:}
\begin{equation}
\slip{\dot\gamma} = \slip\varrho_{\text{edge}}\,\slip b\,\slip v_{\text{glide}} \nonumber
\end{equation}
\end{block}
\begin{block}{Velocity $\slip v_{\text{glide}}$:}
\begin{equation}
\slip v_{\text{glide}} = v_0\,
\exp{\left[-\dfrac{Q}{k_{\text{B}}\,T}\,\left(1-\left(\dfrac{|\slip\tau|}{\slip\tau_{\text{c}}}\right)^p\right)^q\right]} \operatorname{sign}(\slip\tau) \nonumber
\end{equation}
\end{block}
\begin{block}{with:}
\begin{itemize}
\item<1-> $v_0$ velocity pre-factor
\item<1-> $Q$ activation energy for dislocation glide
\item<1-> $k_{\text{B}}\,T$ Boltzmann energy
\end{itemize}
\end{block}
}
\subsection{Twin kinetics}
\frame {
\frametitle{Twin nucleation law}
\begin{block}{Shear rate $\twin{\dot\gamma}$:}
\begin{equation}
\twin{\dot\gamma} = \twin\gamma_{\text{c}}\,\twin{\dot f} = \twin\gamma_{\text{c}}\,(1-f)\,\twin V\,\twin{\dot N} \nonumber
\end{equation}
\end{block}
\begin{block}{Nucleation rate $\twin{\dot N}$:}
\begin{equation}
\twin{\dot N} = \dot{N}_0\,\exp\left[-\left(\frac{\twin\tau_{\text{c}}}{\twin\tau}\right)^r\right] \nonumber
\end{equation}
\end{block}
\begin{block}{with:}
\begin{itemize}
\item<1-> $\twin\gamma_{\text{c}}$ characteristical twin shear
\item<1-> $\twin V$ volume of grown-up twins
\item<1-> $\dot{N}_0$ constant twin nucleation rate per time and volume
\end{itemize}
\end{block}
}
\frame {
\frametitle{Spontaneous twin growth}
\begin{block}{Volume of grown-up twins $\twin V$:}
\begin{equation}
\twin V = \frac{\pi}{6}\,\twin s\,{\twin\lambda}^2 \nonumber
\end{equation}
\end{block}
}
\section{Evolution laws for microstructure}
\frame {
\frametitle{}
\begin{block}{\begin{center}PART III\end{center}} \begin{center}Evolution laws for microstructure\end{center} \end{block}
}
\subsection{Multiplication and annihilation mechanisms}
\frame {
\frametitle{Dislocation multiplication}
\begin{block}{Multiplication:}
\begin{equation}
\slip{\dot\varrho_{\text{multiplication}}} = \dfrac{|\slip{\dot\gamma}|}{\slip b\,\slip\lambda} \nonumber
\end{equation}
\end{block}
}
\frame {
\frametitle{Dipole formation}
\begin{block}{Dipole formation:}
\begin{equation}
\slip{\dot\varrho_{\text{formation}}} = 2\,\dfrac{2\,\operatorname{max}(\slip{\hat d},\slip{\check d})}{\slip b}\,\dfrac{\slip\varrho_{\text{edge}}}{2}\,|\slip{\dot\gamma}| \nonumber
\end{equation}
\end{block}
\begin{block}{Upper stability limit for dipoles $\slip{\hat d}$:}
\begin{equation}
\slip{\hat d} = \dfrac{1}{8\,\pi}\,\dfrac{G_{\text{iso}}\,\slip b}{1-\nu}\,\dfrac{1}{|\slip\tau|} \nonumber
\end{equation}
\end{block}
}
\frame {
\frametitle{Spontaneous annihilation of 2 single dislocations}
\begin{block}{Single--single annihilation:}
\begin{equation}
\slip{\dot\varrho_{\text{single--single}}} = 2\,\dfrac{2\,\slip{\check d}}{\slip b}\,\dfrac{\slip\varrho_{\text{edge}}}{2}\,|\slip{\dot\gamma}| \nonumber
\end{equation}
\end{block}
\begin{block}{Lower stability limit of dipoles $\slip{\check d}$:}
\begin{equation}
\slip{\check d} \propto \slip b \nonumber
\end{equation}
\end{block}
}
\frame {
\frametitle{Spontaneous annihilation of one single dislocation with a dipole constituent}
\begin{block}{Single--dipole constituent annihilation:}
\begin{equation}
\slip{\dot\varrho_{\text{single--dipole}}} = 2\,\dfrac{2\,\slip{\check d}}{\slip b}\,\dfrac{\slip\varrho_{\text{dipole}}}{2}\,|\slip{\dot\gamma}| \nonumber
\end{equation}
\end{block}
}
\frame {
\frametitle{Dipole climb}
\begin{block}{Dipole climb:}
\begin{equation}
\slip{\dot\varrho_{\text{climb}}} = \slip\varrho_{\text{dipole}}\,\dfrac{2\,v_{\text{climb}}}{(\slip{\hat d}-\slip{\check d})/2} \nonumber
\end{equation}
\end{block}
\begin{block}{Climb velocity $\slip v_{\text{climb}}$:}
\begin{equation}
\slip v_{\text{climb}} = \dfrac{D\,\slip\Omega}{\slip b\,k_{\text{B}}\,T}\,\dfrac{G_{\text{iso}}\,\slip b}{2\,\pi\,(1-\nu)}\,\dfrac{1}{(\slip{\hat d}+\slip{\check d})/2} \nonumber
\end{equation}
\end{block}
}
\subsection{Evolution of dislocation densities}
\frame {
\frametitle{Evolution of dislocation densities}
\begin{block}{Edge dislocation density rate:}
\begin{equation}
\slip{\dot\varrho_{\text{edge}}} = \slip{\dot\varrho_{\text{multiplication}}} - \slip{\dot\varrho_{\text{formation}}} - \slip{\dot\varrho_{\text{single--single}}} \nonumber
\end{equation}
\end{block}
\begin{block}{Dislocation dipole density rate:}
\begin{equation}
\slip{\dot\varrho_{\text{dipole}}} = \slip{\dot\varrho_{\text{formation}}} - \slip{\dot\varrho_{\text{single--dipole}}} - \slip{\dot\varrho_{\text{climb}}} \nonumber
\end{equation}
\end{block}
}
\end{document}

View File

@ -1,491 +0,0 @@
%% LyX 1.6.2 created this file. For more info, see http://www.lyx.org/.
%% Do not edit unless you really know what you are doing.
\documentclass{scrartcl}
\usepackage[usenames,dvipsnames,pdftex]{color}
\usepackage{amsmath,amssymb,amsfonts}
%\usepackage[alsoload={accepted,named,prefix}]{siunitx}
%\usepackage[load-configurations=version-1]{siunitx}
\usepackage{subeqnarray}
\usepackage[format=hang]{subfig}
\usepackage{booktabs}
\usepackage{verbatim}
\usepackage{miller}
\usepackage{bm}
\usepackage{geometry}
\usepackage[authoryear]{natbib}
%Check if we are compiling under latex or pdflatex
\ifx\pdftexversion\undefined
\usepackage[dvips,draft]{graphicx}
\else
% \usepackage[pdftex,draft]{graphicx}
\usepackage[pdftex]{graphicx}
\fi
\graphicspath{
{./figures/}
{./}
}
\DeclareGraphicsExtensions{.pdf,.png}
\definecolor{DarkBlue}{rgb}{.106, .212, .4}
\usepackage[pdftex,% hyper-references for pdftex
bookmarksnumbered=true,% generate bookmarks with numbers
pagebackref=true,% generate backref in biblio
colorlinks=true,%
linkcolor=DarkBlue,citecolor=DarkBlue,urlcolor=DarkBlue%
]{hyperref}%
\begin{document}
\title{Summary of constitutive\_phenoPowerlaw}
\author{YunJo Ro \and Philip Eisenlohr}
\maketitle
\begin{abstract}
This document contains information for constitutive\_phenoPowerlaw.f90.
This constitutive subroutine is modified from the current contitutive\_phenomenological.f90.
We introduce slip and twin family as additional index (or input) for
each crystal structure in lattice.f90 subroutine (e.g., for HCP crystal:
slip and twin system has four families, respectively).
\end{abstract}
\section{State Variables in constitutive\_phenoPowerlaw.f90}
The current State variables in constitutive\_phenoPowerlaw are {}``slip
resistance $\left(s^{\alpha}\right)$'', ''twin resistance $\left(s^{\beta}\right)$'',
{}``cumulative shear strain $\left(\gamma^{\alpha}\right)$'', and
{}``twin volume fraction $\left(f^{\beta}\right)$''. Superscript
$\alpha$ and $\beta$ denote to slip and twin systems, respectively,
in this entire document.
\section{Considered Deformation Mechanisms}
Table \ref{Flo:DeformationSystemTable} lists slip/twin systems for
the {}``hex (hcp)'' case.\medskip{}
%
\begin{table}[tbph]
\centering
\begin{tabular}{cccc}
\toprule
\textbf{type} & \textbf{system} & \textbf{plane / direction} & \textbf{multiplicity}\\
\midrule
slip & basal & $\left\{ 0001\right\} \left\langle 1\bar{2}10\right\rangle $ & 3\\
& prism & $\left\{ 10\bar{1}0\right\} \left\langle 1\bar{2}10\right\rangle $ & 3\\
& pyr \hkl<a> & $\left\{ 10\bar{1}1\right\} \left\langle 1\bar{2}10\right\rangle $ & 6\\
& pyr \hkl<c+a> & $\left\{ 10\bar{1}1\right\} \left\langle 2\bar{1}\bar{1}3\right\rangle $ & 12\\
& pyr & $\left\{ 11\bar{2}2\right\} \left\langle 11\bar{2}\bar{3}\right\rangle $ & 6\\
\midrule
twin & T1 & $\left\{ 10\bar{1}2\right\} \left\langle \bar{1}011\right\rangle $ & 6\\
& C1 & $\left\{ 11\bar{2}2\right\} \left\langle 11\bar{2}\bar{3}\right\rangle $ & 6\\
& T2 & $\left\{ 11\bar{2}1\right\} \left\langle \bar{1}\bar{1}26\right\rangle $ & 6\\
& C2 & $\left\{ 10\bar{1}1\right\} \left\langle 10\bar{1}\bar{2}\right\rangle $ & 6\\
\bottomrule
\end{tabular}\caption{Implemented deformation mechanims in $\alpha$-Ti }
\label{Flo:DeformationSystemTable}
\end{table}
Slip/twin system for HCP are illustrated in Figures \ref{fig: dislocation slip systems}
and \ref{fig: twinning systems}.
%..............FIG...............
% === SEM ===
\begin{figure}
\centering
\subfloat[Basal \hkl<a> slip]{%
\label{fig: dislocation slip basal}%
\includegraphics{slipSystem_basal}}
\quad
\subfloat[Prismatic \hkl<a> slip]{%
\label{fig: dislocation slip prism}%
\includegraphics{slipSystem_prismA}}
\quad
\subfloat[Pyramidal \hkl<a> slip]{%
\label{fig: dislocation slip pyramidal a}%
\includegraphics{slipSystem_pyrA}}
\quad
\subfloat[Pyramidal \hkl<c+a> slip]{%
\label{fig: dislocation slip pyramidal ca}%
\includegraphics{slipSystem_pyrCA}}
\quad
\subfloat[Pyramidal slip]{%
\label{fig: dislocation slip pyramidal ca}%
\includegraphics{slipSystem_pyr}}
\quad
\caption{
Dislocation slip systems considered for hexagonal lattice structure.}
\label{fig: dislocation slip systems}
\end{figure}
%...................................
%..............FIG...............
% === SEM ===
\begin{figure}
\centering
\subfloat[Extension (T1)]{%
\label{fig: twin T1}%
\includegraphics{twinSystem_T1}}
\quad
\subfloat[Contraction (C1)]{%
\label{fig: twin C1}%
\includegraphics{twinSystem_C1}}
\quad
\subfloat[Extension (T2)]{%
\label{fig: twin T2}%
\includegraphics{twinSystem_T2}}
\quad
\subfloat[Contraction (C2)]{%
\label{fig: twin C2}%
\includegraphics{twinSystem_C2}}
\quad
\caption{
Mechanical twinning systems considered for hexagonal lattice structure. Burgers vectors are not drawn to scale.}
\label{fig: twinning systems}
\end{figure}
%...................................
\section{Kinetics}
Shear strain rate due to slip is described by following equation \citet{Salem2005,Wu2007}:\begin{equation}
\dot{\gamma}^{\alpha}=\dot{\gamma_{o}}\left|\frac{\tau^{\alpha}}{s^{\alpha}}\right|^{n}sign\left(\tau^{\alpha}\right)\label{eq:slipStrainRate}\end{equation}
, where $\dot{\gamma}^{\alpha}$; shear strain rate, $\dot{\gamma}_{o}$;
reference shear strain rate, $\tau^{\alpha}$; resolved shear stress
on the slip system, $n$; stress exponent, and $s^{\alpha}$; slip
resistance.
Twin volume fraction rate is described by following equation \citet{Salem2005,Wu2007}:
\begin{equation}
\dot{f}^{\beta}=\frac{\dot{\gamma_{o}}}{\gamma^{\beta}}\left|\frac{\tau^{\beta}}{s^{\beta}}\right|^{n}\mathbb{\mathcal{H}}\left(\tau^{\beta}\right)\label{eq:twinVolrate}\end{equation}
, where $\dot{f}^{\beta}$; twin volume fraction rate, $\dot{\gamma}_{o}$;
reference shear strain rate, $\gamma^{\beta}$;shear strain due to
mechanical twinning, $\tau^{\beta}$; resolved shear stress on the
twin system, and $s^{\beta}$; twin resistance. $\mathcal{H}$ is
Heaviside function.
\section{Structure Evolution}
In this present section, we attempt to show how we establish the relationship
between the evolutoin of slip/twin resistance and the evolution of
shear strain/twin volume fraction.
\subsection{Interaction matrix. }
Conceptual relationship between the evolution of state and kinetic
variables is shown in Equation \ref{eq:InteractionMatrix}.
\begin{equation}
\left[\begin{array}{c}
\dot{s}^{\alpha}\\
\dot{s}^{\beta}\end{array}\right]=\left[\begin{array}{cc}
M_{\mathrm{slip-slip}} & M_{\mathrm{slip-twin}}\\
M_{\mathrm{twin-slip}} & M_{\mathrm{twin-twin}}\end{array}\right]\left[\begin{array}{c}
\dot{\gamma}^{\alpha}\\
\gamma^{\beta}\cdot\dot{f}^{\beta}\end{array}\right]\label{eq:InteractionMatrix}\end{equation}
Four interaction martices are followings; i) slip-slip interaction
matrix $\left(M_{\mathrm{{\scriptstyle slip-slip}}}\right)$, ii)
slip-twin interaction matrix $\left(M_{\mathrm{slip-twin}}\right)$,
iii) twin-slip interaction matrix $\left(M_{\mathrm{twin-slip}}\right)$,
and iv) twin-twin interaction matrix $\left(M_{\mathrm{twin-twin}}\right)$.
Detailed interaction type matrices in Equation \ref{eq:InteractionMatrix}
will be further discussed in the following Section.
\subsection{Interaction type matrix}
Following sections are sparated into four based on each interaction
type matrix alluded. Numbers in Tables \ref{Flo:SlipSlipIntTypeTable},
\ref{Flo:SlipTwinIntTypeTable}, \ref{Flo:TwinSlipIntTypeTable},
and \ref{Flo:TwinTwinIntTypeTable} denote the type of interaction
between deformation systems (The first column vs. The first row).
\subsubsection{Slip-Slip interaction type matrix}
\begin{itemize}
\item There are 20 types of slip-slip interaction as shown in Table \ref{Flo:SlipSlipIntTypeTable}.
\item In Table \ref{Flo:SlipSlipIntTypeTable}, types of latent hardening
among slip systems are listed.
\item Actual slip-slip interaction type matrix, $M_{\mathrm{slip-slip}}^{'}$,
is listed in Equation \ref{eq:SlipSlipIntMatrix}.
\end{itemize}
%
\begin{table}[H]
\begin{centering}
\begin{tabular}{ccccc}
\toprule
& basal & prism & pyr \hkl<a> & pyr\hkl<c+a>\\
\midrule
basal & 1, 5 & 9 & 12 & 14\\
prism & 15 & 2, 6 & 10 & 13\\
pyr \hkl<a> & 18 & 16 & 3, 7 & 11\\
pyr \hkl<c+a> & 20 & 19 & 17 & 4, 8\\
\bottomrule
\end{tabular}
\par\end{centering}
\caption{Slip--slip interaction type}
\label{Flo:SlipSlipIntTypeTable}
\end{table}
\begin{equation}
M_{\mathrm{slip-slip}}^{'}=\left[\begin{array}{ccc|ccc|cccccc|cccccccccccc}
1 & 5 & 5 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
& 1 & 5 & \cdot & 9 & \cdot & \cdot & \cdot & 12 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & 14 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
& & 1 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\hline \cdot & \cdot & \cdot & 2 & 6 & 6 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & 15 & \cdot & & 2 & 6 & \cdot & \cdot & 10 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & 13 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & & & 2 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\hline \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & 3 & 7 & 7 & 7 & 7 & 7 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & 3 & 7 & 7 & 7 & 7 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & 3 & 7 & 7 & 7 & \cdot & \cdot & \cdot & \cdot & \cdot & 11 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & 18 & \cdot & \cdot & 16 & \cdot & & & & 3 & 7 & 7 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & 3 & 7 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & & 3 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\hline \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & 4 & 8 & 8 & 8 & 8 & 8 & 8 & 8 & 8 & 8 & 8 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & 4 & 8 & 8 & 8 & 8 & 8 & 8 & 8 & 8 & 8 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & 4 & 8 & 8 & 8 & 8 & 8 & 8 & 8 & 8 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & 4 & 8 & 8 & 8 & 8 & 8 & 8 & 8 & 8\\
\cdot & 20 & \cdot & \cdot & 19 & \cdot & \cdot & \cdot & 17 & \cdot & \cdot & \cdot & & & & & 4 & 8 & 8 & 8 & 8 & 8 & 8 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & & 4 & 8 & 8 & 8 & 8 & 8 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & & & 4 & 8 & 8 & 8 & 8 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & & & & 4 & 8 & 8 & 8 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & & & & & 4 & 8 & 8 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & & & & & & 4 & 8 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & & & & & & & 4 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & & & & & & & & 4\end{array}\right]\label{eq:SlipSlipIntMatrix}\end{equation}
\vfill{}
\vfill{}
\subsubsection{Slip-Twin interaction type matrix}
\begin{itemize}
\item There are 16 types of slip-twin interaction in Table \ref{Flo:SlipTwinIntTypeTable}.
\item Meaning of T1, C1, T2, C2 is listed in Table \ref{Flo:DeformationSystemTable}.
\item Actual slip-twin interaction type matrix, $M_{\mathrm{slip-twin}}^{'}$,
is listed in Equation \ref{eq:SlipTwinIntMatrix}.
\end{itemize}
%
\begin{table}[H]
\begin{centering}
\begin{tabular}{ccccc}
\toprule
& T1 & C1 & T2 & C1\\
\midrule
basal & 1 & 2 & 3 & 4\\
prism & 5 & 6 & 7 & 8\\
pyr \hkl<a> & 9 & 10 & 11 & 12\\
pyr \hkl<c+a> & 13 & 14 & 15 & 16\\
\bottomrule
\end{tabular}
\par\end{centering}
\caption{Slip-twin interaction type}
\label{Flo:SlipTwinIntTypeTable}
\end{table}
\begin{equation}
M_{\mathrm{slip-twin}}^{'}=\left[\begin{array}{c|c|c|c}
1 & 2 & 3 & 4\\
\hline 5 & 6 & 7 & 8\\
\hline 9 & 10 & 11 & 12\\
\hline 13 & 14 & 15 & 16\end{array}\right]\label{eq:SlipTwinIntMatrix}\end{equation}
\subsubsection{Twin-Slip interaction type matrix}
\begin{itemize}
\item There 16 types of twin-slip interaction in Table \ref{Flo:TwinSlipIntTypeTable}.
\item Meaning of T1, C1, T2, C2 is listed in Table \ref{Flo:DeformationSystemTable}.
\item Actual twin-slip interaction type matrix, $M_{\mathrm{twin-slip}}^{'}$,
is listed in Equation \ref{eq:TwinSlipIntMatrix}.
\end{itemize}
%
\begin{table}[H]
\begin{centering}
\begin{tabular}{ccccc}
\toprule
& basal & prism & pyr \hkl<a> & pyr \hkl<c+a>\\
\midrule
T1 & 1 & 5 & 9 & 13\\
C1 & 2 & 6 & 10 & 14\\
T2 & 3 & 7 & 11 & 15\\
C2 & 4 & 8 & 12 & 16\\
\bottomrule
\end{tabular}
\par\end{centering}
\caption{Twin-slip interaction type}
\label{Flo:TwinSlipIntTypeTable}
\end{table}
\begin{equation}
M_{\mathrm{twin-slip}}^{'}=\left[\begin{array}{c|c|c|c}
1 & 5 & 9 & 13\\
\hline 2 & 6 & 10 & 14\\
\hline 3 & 7 & 11 & 15\\
\hline 4 & 8 & 12 & 16\end{array}\right]\label{eq:TwinSlipIntMatrix}\end{equation}
\subsubsection{Twin-twin interaction type matrix}
\begin{itemize}
\item There are 20 types of twin-twin interaction as shown in Table \ref{Flo:TwinTwinIntTypeTable}.
\item In Table \ref{Flo:TwinTwinIntTypeTable}, types of latent hardening
among twin systems are listed.
\item Actual twin-twin interaction type marix, $M_{\mathrm{twin-twin}}^{'}$,
is listed in Equation \ref{eq:TwinTwinIntMatrix}.
\end{itemize}
%
\begin{table}[H]
\begin{centering}
\begin{tabular}{ccccc}
\toprule
& T1 & C1 & T2 & C2\\
\midrule
T1 & 1, 5 & 9 & 12 & 14\\
C1 & 15 & 2, 6 & 10 & 13\\
T2 & 18 & 16 & 3, 7 & 11\\
C2 & 20 & 19 & 17 & 4, 8\\
\bottomrule
\end{tabular}
\par\end{centering}
\caption{Twin-twin interaction type}
\label{Flo:TwinTwinIntTypeTable}
\end{table}
\begin{equation}
M_{\mathrm{twin-twin}}^{'}=\left[\begin{array}{cccccc|cccccc|cccccc|cccccc}
1 & 5 & 5 & 5 & 5 & 5 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
& 1 & 5 & 5 & 5 & 5 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
& & 1 & 5 & 5 & 5 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
& & & 1 & 5 & 5 & \cdot & \cdot & \cdot & 9 & \cdot & \cdot & \cdot & \cdot & \cdot & 12 & \cdot & \cdot & \cdot & \cdot & \cdot & 14 & \cdot & \cdot\\
& & & & 1 & 5 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
& & & & & 1 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\hline \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & 2 & 6 & 6 & 6 & 6 & 6 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & 2 & 6 & 6 & 6 & 6 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & 2 & 6 & 6 & 6 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & 15 & \cdot & \cdot & & & & 2 & 6 & 6 & \cdot & \cdot & \cdot & 10 & \cdot & \cdot & \cdot & \cdot & \cdot & 13 & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & 2 & 6 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & & 2 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\hline \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & 3 & 7 & 7 & 7 & 7 & 7 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & 3 & 7 & 7 & 7 & 7 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & 3 & 7 & 7 & 7 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & 18 & \cdot & \cdot & \cdot & \cdot & \cdot & 16 & \cdot & \cdot & & & & 3 & 7 & 7 & \cdot & \cdot & \cdot & 11 & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & 3 & 7 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & & 3 & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot\\
\hline \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & 4 & 8 & 8 & 8 & 8 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & 4 & 8 & 8 & 8 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & 4 & 8 & 8 & 8\\
\cdot & \cdot & \cdot & 20 & \cdot & \cdot & \cdot & \cdot & \cdot & 19 & \cdot & \cdot & \cdot & \cdot & \cdot & 17 & \cdot & \cdot & & & & 4 & 8 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & 4 & 8\\
\cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & \cdot & & & & & & 4\end{array}\right]\label{eq:TwinTwinIntMatrix}\end{equation}
\subsection{Prefactor (nonlinear factor)}
\subsubsection{Prefactors for slip resistance $\left(s^{\alpha}\right)$; $M_{\mathrm{slip-slip}}$
and $M_{\mathrm{slip-twin}}$\citet{Wu2007}}
$M_{\mathrm{slip-slip}}$ and $M_{\mathrm{slip-twin}}$ use for slip
resistance evolution $\left(\dot{s}^{\alpha}\right)$. Equation \ref{eq:SlipResisEvolutionEq}
is for a slip resistance rate evolution. This currently shows the
prefactor for {}``slip-slip interaction matrix, $M_{\mathrm{slip-slip}}$''.
\medskip{}
\begin{equation}
M_{\mathrm{slip-slip}}=h_{\mathrm{slip}}\left(1+C\cdot F^{b}\right)\left(1-\frac{s^{\alpha}}{s_{so}^{\alpha}+s_{\mathrm{pr}}\cdot\sqrt{F}}\right)\cdot M_{\mathrm{slip-slip}}^{'}\label{eq:SlipResisEvolutionEq}\end{equation}
\medskip{}
, where $h_{\mathrm{slip}}$represent a hardening rate, and $S_{\mathrm{so}}^{\alpha}$
saturation slip resistance for slip system without mechanical twinning
$\left(\sum_{\beta}f^{\beta}=0\right)$, respectively. And, $F$ is
$\sum_{\beta}f^{\beta}$, and $N^{S}$is the total number of slip
system.$C$, $s_{\mathrm{pr}}$, and $b$ are coefficients to introduce
the effect of interaction between slip and mechanical twin in Equation
\ref{eq:SlipResisEvolutionEq}.
\begin{itemize}
\item Slip-twin interaction matrix, $M_{\mathrm{slip-twin}}$, has not been
implemented with any prefactor in the present version.
\end{itemize}
\subsubsection{Prefactors for twin resistance $\left(s^{\beta}\right)$; $M_{\mathrm{twin-slip}}$
and $M_{\mathrm{twin-twin}}$\citet{Salem2005}}
$M_{\mathrm{twin-sli}p}$ and $M_{\mathrm{twin-twin}}$ use for twin
resistance evolution $\left(\dot{s}^{\beta}\right)$. Twin-twin and
twin-slip interaction matrices are described in Equations \ref{eq:TwinTwinContributionToTwinResis}
and \ref{eq:TwinSlipContributionToTwinResis}. \medskip{}
\begin{equation}
M_{\mathrm{twin-twin}}=h_{\mathrm{tw}}\cdot F^{d}\cdot M_{\mathrm{twin-twin}}^{'}\label{eq:TwinTwinContributionToTwinResis}\end{equation}
,where $h_{\mathrm{tw}}$ and $d$ are coefficients for twin-twin
contribution. $F$ is $\sum_{\beta}f^{\beta}$.
\medskip{}
\begin{equation}
M_{\mathrm{twin-slip}}=h_{\mathrm{tw-sl}}\cdot\Gamma^{e}\cdot M_{\mathrm{twin-slip}}^{'}\label{eq:TwinSlipContributionToTwinResis}\end{equation}
,where $h_{\mathrm{tw-sl}}$ and $e$ are coefficients for twin-slip
contribution, and $\Gamma=\sum_{\alpha}\gamma^{\alpha}$.
\clearpage{}
\section{Material Parameters (Material Configuration file)}
%
\begin{figure}[tbph]
\begin{centering}
\includegraphics[clip,scale=0.6]{figures/ExpectedMaterialConfigFile}\caption{Expected of phenomenological modelling parameters.}
\label{Fig:ModelParameters}
\par\end{centering}
\end{figure}
\begin{itemize}
\item The sequence for hardening coefficients in Figure \ref{Fig:ModelParameters}
is the sequence of numbering in Tables \ref{Flo:SlipSlipIntTypeTable},
\ref{Flo:SlipTwinIntTypeTable}, \ref{Flo:TwinSlipIntTypeTable},
and \ref{Flo:TwinTwinIntTypeTable} above.
\end{itemize}
\clearpage{}
\bibliographystyle{plainnat}
\bibliography{MPIEyjr}
\end{document}

View File

@ -1,43 +0,0 @@
%% LyX 1.6.2 created this file. For more info, see http://www.lyx.org/.
%% Do not edit unless you really know what you are doing.
\documentclass[letterpaper,landscape,english]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{array}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% LyX specific LaTeX commands.
\special{papersize=\the\paperwidth,\the\paperheight}
%% Because html converters don't know tabularnewline
\providecommand{\tabularnewline}{\\}
\usepackage{babel}
\begin{document}
\title{Example Interaction Coefficient Input in Material.config file}
\author{YUNJO RO}
\maketitle
\begin{center}
{\footnotesize }\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}
\hline
\textbf{\footnotesize type} & \textbf{\footnotesize 1} & \textbf{\footnotesize 2} & \textbf{\footnotesize 3} & \textbf{\footnotesize 4} & \textbf{\footnotesize 5} & \textbf{\footnotesize 6} & \textbf{\footnotesize 7} & \textbf{\footnotesize 8} & \textbf{\footnotesize 9} & \textbf{\footnotesize 10} & \textbf{\footnotesize 11} & \textbf{\footnotesize 12} & \textbf{\footnotesize 13} & \textbf{\footnotesize 14} & \textbf{\footnotesize 15} & \textbf{\footnotesize 16} & \textbf{\footnotesize 17} & \textbf{\footnotesize 18} & \textbf{\footnotesize 19} & \textbf{\footnotesize 20}\tabularnewline
\hline
\textbf{\footnotesize interaction\_slipslip} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 5.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0}\tabularnewline
\hline
\textbf{\footnotesize interaction}{\footnotesize \_}\textbf{\footnotesize sliptwin} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & & & & \tabularnewline
\hline
\textbf{\footnotesize interaction\_twinslip} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & & & & \tabularnewline
\hline
\textbf{\footnotesize interaction\_twintwin} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0} & {\footnotesize 1.0}\tabularnewline
\hline
\end{tabular}
\par\end{center}{\footnotesize \par}
Please check {}``ConstitutivePhenoPowerLaw.pdf'' in this folder
to check meaning of type 1-20 (the first row in the Table above).
\end{document}

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 279 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,74 +0,0 @@
#####################
<homogenization>
#####################
[SX]
type Taylor
Ngrains 1
[RGC]
type RGC
Ngrains 8
[Taylor4]
type Taylor
Ngrains 4
#####################
<microstructure>
#####################
[cp-Ti_Grain_1]
(constituent) phase 1 texture 1 fraction 1.0
#####################
<phase>
#####################
[cp-Ti]
constitution phenopowerlaw
(output) slipresistance
(output) rateofshear
(output) twinresistance
(output) twinVolfrac
(output) rateoftwinVolfrac
(output) tauSlip
(output) tauTwin
lattice_structure hex
covera_ratio 1.587
Nslip 3 3 6 12
Ntwin 6 6 6 6
C11 162e9
C12 92e9
C13 69e9
C33 181e9
C44 47e9
gdot0_slip 0.001
n_slip 50.0
s0_slip 65e6 22e6 50e6 50e6
s_sat_slip 180e6 80e6 180e6 180e6
gdot0_twin 0.001
n_twin 50.0
s0_twin 70e6 70e6 250e8 250e8
s_pr 100e6
twin_b 25
twin_c 2
twin_d 0.0
twin_e 0.0
h0_slipslip 60e6
h0_sliptwin 0.0
h0_twinslip 0.0
h0_twintwin 0.0
interaction_slipslip 1.0 1.0 1.0 1.0 1.0 5.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
interaction_sliptwin 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
interaction_twinslip 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
interaction_twintwin 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0
#####################
<texture>
####################
[Grain_1]
(gauss) phi1 0.000000 phi 0.00000 phi2 0.00000 scatter 0.0 fraction 1.0

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,35 +0,0 @@
% This file was created with JabRef 2.5.
% Encoding: Cp1252
@BOOK{Bunge1982,
title = {Texture Analysis in Materials Science},
publisher = {Butterworths Publishers},
year = {1982},
author = {H.J. Bunge},
address = {London},
owner = {c.zambaldi},
timestamp = {2008.10.21}
}
@ARTICLE{Roters2010,
author = {F. Roters and P. Eisenlohr and L. Hantcherli and D. D. Tjahjanto
and T. R. Bieler and D. Raabe},
title = {Overview of constitutive laws, kinematics, homogenization, and multiscale
methods in crystal plasticity finite element modeling: theory, experiments,
applications},
journal = {Acta Materialia},
year = {2010},
volume = {58},
pages = {1152--1211},
number = {4},
doi = {10.1016/j.actamat.2009.10.058}
}
@comment{jabref-meta: selector_publisher:}
@comment{jabref-meta: selector_author:}
@comment{jabref-meta: selector_journal:}
@comment{jabref-meta: selector_keywords:}

View File

@ -1,239 +0,0 @@
\documentclass[USenglish]{scrbook}
\usepackage{graphicx}
\graphicspath{
{figures/}
{../NSD/}
}
\DeclareGraphicsExtensions{.pdf,.png}
\usepackage[authoryear,sort&compress]{natbib}
\usepackage[usenames,dvipsnames]{color}
\usepackage[pdftex, % hyper-references for pdftex
bookmarksnumbered=true,% % generate bookmarks with numbers
pagebackref=true,% % generate backref in biblio
colorlinks=true,%
linkcolor=MidnightBlue,%
citecolor=MidnightBlue,%
breaklinks=true,%
]{hyperref}%
\hypersetup{
pdfauthor = {Claudio Zambaldi, Philip Eisenlohr},
pdftitle = {Manual to the Material Point Model developed at the Max-Planck-Institut f\"ur Eisenforschung},
pdfsubject = {},
pdfkeywords = {},
pdfcreator = {},
pdfproducer = {pdftex}%,
%pdfpagemode={FullScreen}
}
\usepackage{amsmath,amssymb,amsfonts}
\usepackage{bm}
\usepackage{miller}
%\usepackage[alsoload={accepted,named,prefix}]{siunitx}
\usepackage{siunitx}
\usepackage{booktabs}
\usepackage{longtable}
\usepackage[indent,bf,tableposition=top]{caption} % Einstellen des caption-Stils, war caption2
\usepackage[format=hang]{subfig}
\usepackage{tocbibind}
\usepackage[bookman]{quotchap}
\usepackage{csquotes} % consistent quoting by \enquote{...}
\usepackage{listings}
%\lstloadlanguages{bash,fortran}
\lstset{language={},
lineskip=4pt,
frame=none,
framesep=0mm,
framexleftmargin=5mm,
framexrightmargin=5mm,
framextopmargin=5mm,
framexbottommargin=5mm,
xleftmargin=10mm,
xrightmargin=10mm,
% numbers=left,
stepnumber=1,
numbersep=5pt,
numberstyle=\tiny,
breaklines=true,
breakautoindent=true,
postbreak=...,%\space,
tabsize=2,
basicstyle=\ttfamily\footnotesize,
showspaces=false,
showstringspaces=false,
extendedchars=true,
backgroundcolor=\color{white}
}
\newlength{\diagramsize}
\setlength{\diagramsize}{0.9\textwidth}
\setcounter{tocdepth}{2}
\newcommand{\includepath}{include}
\newcommand{\ie}{\textit{i.e.}}
\newcommand{\eg}{\textit{e.g.}}
\newcommand{\cf}{\textit{cf.}}
\newcommand{\etal}{\textit{et al.}}
\newcommand{\Euler}{\textsc{Euler}}
\newcommand{\OneD}{\hbox{1-D}}
\newcommand{\TwoD}{\hbox{2-D}}
\newcommand{\ThreeD}{\hbox{3-D}}
\DeclareMathOperator{\sign}{sgn}
\DeclareMathOperator{\divergence}{div}
\DeclareMathOperator{\grad}{grad}
\DeclareMathOperator{\curl}{curl}
\DeclareMathOperator{\Divergence}{Div}
\DeclareMathOperator{\Grad}{Grad}
\DeclareMathOperator{\Curl}{Curl}
\newcommand{\tnsr}[1]{\ensuremath{\bm{#1}}}
\newcommand{\vctr}[1]{\ensuremath{\bm{#1}}}
\newcommand{\inc}{\ensuremath{\mathrm d}}
\newcommand{\transpose}[1]{\ensuremath{{#1}^{\text T}}}
\newcommand{\inverse}[1]{\ensuremath{{#1}^{-1}}}
\newcommand{\invtranspose}[1]{\ensuremath{{#1}^{\text{-T}}}}
\newcommand{\eyetwo}{\ensuremath{\tnsr{I}}}
\newcommand{\eyefour}{\ensuremath{\mathbb{I}}}
\newcommand{\F}{\ensuremath{\tnsr F}}
\newcommand{\Fp}{\ensuremath{\tnsr F_\text{p}}}
\newcommand{\Fe}{\ensuremath{\tnsr F _\text{e}}}
\newcommand{\Ftr}{\ensuremath{\tnsr F _\text{tr}}}
\newcommand{\E}{\ensuremath{\tnsr E}}
\newcommand{\GL}{\ensuremath{\tnsr E_\text{e}}}
\newcommand{\fPK}{\ensuremath{\tnsr P}}
\newcommand{\sPK}{\ensuremath{\tnsr S}}
\newcommand{\etap}{\ensuremath{\eta_\text{p}}}
\newcommand{\etae}{\ensuremath{\eta_\text{e}}}
\newcommand{\etatr}{\ensuremath{\eta_\text{tr}}}
\newcommand{\dtF}{\ensuremath{\dot{\tnsr F}}}
\newcommand{\dtFp}{\ensuremath{\dot{\tnsr F}_\text{p}}}
\newcommand{\dtFe}{\ensuremath{\dot{\tnsr F}_\text{e}}}
\newcommand{\dtetap}{\ensuremath{\dot{\eta}_\text{p}}}
\newcommand{\Lp}{\ensuremath{\tnsr L_\text{p}}}
\newcommand{\Je}{\ensuremath{J_\text{e}}}
\newcommand{\Jtr}{\ensuremath{J_\text{tr}}}
\newcommand{\thetatr}{\ensuremath{\theta_\text{tr}}}
\newcommand{\Elasticity}{\ensuremath{\mathbb{C}}}
\newcommand{\Cauchy}{\ensuremath{\boldsymbol{\sigma}}}
\newcommand{\Ntwin}{\ensuremath{N_\text{twin}}}
\newcommand{\Nslip}{\ensuremath{N_\text{slip}}}
\newcommand{\testfnc}{\ensuremath{\delta\vctr v}}
% Reference formats
\newcommand{\fref}[1]{figure~\ref{#1}} % figure x
\newcommand{\Fref}[1]{Figure~\ref{#1}} % Figure x
\newcommand{\fsref}[1]{figures~\ref{#1}} % figures x
\newcommand{\Fsref}[1]{Figures~\ref{#1}} % Figures x
\newcommand{\tref}[1]{table~\ref{#1}} % tabke x
\newcommand{\Tref}[1]{Table~\ref{#1}} % Table x
\newcommand{\tsref}[1]{tables~\ref{#1}} % tables x
\newcommand{\Tsref}[1]{Tables~\ref{#1}} % Tables x
\newcommand{\eref}[1]{equation~\eqref{#1}} % equation (x)
\newcommand{\Eref}[1]{Equation~\eqref{#1}} % Equation (x)
\newcommand{\esref}[1]{equations~\eqref{#1}} % equations (x)
\newcommand{\Esref}[1]{Equations~\eqref{#1}} % Equations (x)
\newcommand{\cref}[1]{chapter~\ref{#1}} % chapter x
\newcommand{\Cref}[1]{Chapter~\ref{#1}} % Chapter x
\newcommand{\csref}[1]{chapters~\ref{#1}} % chapters x
\newcommand{\Csref}[1]{Chapters~\ref{#1}} % Chapters x
\newcommand{\sref}[1]{section~\ref{#1}} % section x
\newcommand{\Sref}[1]{Section~\ref{#1}} % Section x
\newcommand{\ssref}[1]{sections~\ref{#1}} % sections x
\newcommand{\Ssref}[1]{Sections~\ref{#1}} % Sections x
% text formatting
\newcommand{\term}[1]{\emph{#1}}
\newcommand{\reminder}[1]{\textcolor{Red}{#1}}
\newcommand{\remark}[1]{\textcolor{CornflowerBlue}{#1}}
% Change Layout of Backref
\renewcommand*{\backref}[1]{%
% default interface
% #1: backref list
%
% We want to use the alternative interface,
% therefore the definition is empty here.
}%
\renewcommand*{\backrefalt}[4]{%
% alternative interface
% #1: number of distinct back references
% #2: backref list with distinct entries
% #3: number of back references including duplicates
% #4: backref list including duplicates
\scriptsize
\begin{flushright}
Cited%
%~#3 %
%\ifnum#3=1 %
%time%
%\else
%times%
%\fi
~on page%
\ifnum#1>1 %
s%
\fi
~#2%
.%
\end{flushright}
}
\begin{document}
\title{Manual\\[1cm]Material Point Model \\[3mm] \normalsize developed at the \\[3mm] Max-Planck-Institut f\"ur Eisenforschung}
\author{Claudio Zambaldi \and Philip Eisenlohr}
\maketitle
%\includeonly{}
\frontmatter
%\include{foreword}
\tableofcontents
\listoftables
\listoffigures
%\include{include/preface}
\mainmatter
\renewcommand{\chaptermark}[1]{\markboth{{\thechapter\ \ #1}}{}}
\input{include/Preliminaries}
\part{Praxis}
%\input{include/Installation}
\input{include/CodeOrganization}
\part{Theory}
\input{include/Homogenization}
\input{include/ConstitutiveLaws}
\input{include/ApplicationNotes}
\input{include/Postprocessing}
\input{include/Examples}
\appendix
\cleardoublepage \phantomsection % set the hyperref anchor at the right position
\input{include/Crystallography}
\chapter{Related works}
\section{Publications}
\section{PhD thesises}
KuoDiss MaDiss ZaafaraniDiss
\bibliographystyle{plainnat}
\bibliography{MPIE_CPFEM_manual}
\end{document}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -1,31 +0,0 @@
% #################
\chapter{Application notes for different finite elements systems}
% #################
\section{MSC.MARC/Mentat}
In MARC the CPFEM routine is interfaced through the {\ttfamily hypela2} subroutine. The routine {\ttfamily makeMe.py} produces the interface files such as {\ttfamily mpie\_cpfem\_marc2008r1.f90} that will can be called by the different MARC releases.
Necessary changes in the submit scripts
Model definition for using the subroutine: In MARC, state variable 1 defines the temperature in Kelvin. State variables 2 and 3 define the homogenization and microstructure, respectively.
Analysis options to invoke: Large Strain, Updated Lagrange. For most problems, using a constant dilatation formulation is important for robustness of the simulations.
%The analysis options are most conveniently defined through a procedure file.
\subsection{Utility scripts}
\begin{itemize}
\item marcAddUserOutput.py [<No. of UserVars>] marcinput --- adds UserVariables to the marcinput file under the post section
\end{itemize}
\subsection{Practical hints}
A copy of the subroutine on the home directory on the SAN makes the routine accessible from all workstations under /san/arbitraryfoldername/code/*.f90 .
Under windows it is beneficial to keep an additional local copy of the routine to work with TortoiseSVN, since the change of folder icons seems to not work on the SAN.
\section{Troubleshooting}
\subsection{Inside out element error}
An inside out element error can occur if the number of increment is chosen too small. This was observed for revision 539 using the pheno-powerlaw constitutive formulation on a particle in mesh problem.
\section{Abaqus}
Differences to Marc.

View File

@ -1,9 +0,0 @@
% #################
\chapter{Organization of the code}
% #################
\input{include/org_code}
\input{include/org_documentation}
\input{include/org_processing}
\input{include/org_testing}
\input{include/org_installation}

View File

@ -1,11 +0,0 @@
% #################
\chapter{Constitutive Laws}
% #################
\section{phenoPowerlaw}
\subsection{The material file for phenoPowerlaw}
\section{dislotwin}
\section{The non-local model}
\section{The material file: material.config}

View File

@ -1,23 +0,0 @@
% ########################
\chapter{Crystallographic orientations}
% ########################
\section{Bunge Euler angles}
\label{bunges}
Euler angles $(\varphi_1, \phi, \varphi_2)$---following the Bunge convention---rotate the sample coordinate system ($X$, $Y$, $Z$ or RD, TD, ND) into the crystal coordinate system ($x_\text c$, $y_\text c$, $z_\text c$).
Three successive rotations are carried out in the following way \citep[p.~4]{Bunge1982}:
\begin{enumerate}
\item Rotate by $\varphi_1$ around Z, to bring X into the $x_\text c$--$y_\text c$-plane. The new intermediate axes are $X^\prime$, $Y^\prime$ and $Z$ (unchanged).
\item Now rotate by $\phi$ around $X^\prime$, to make $Z$ parallel with $z_\text c$. The intermediate axes are $X^\prime$, $Y^{\prime\prime}$, $Z^\prime$.
\item A final rotation by $\varphi_2$ around $Z^\prime \equiv z_\text c$ makes the rotated axes then identical to the crystal axes.
\end{enumerate}
The rotation matrix can be calculated as
\[% Gottstein pg 55
\tnsr{g}=\left(\begin{array}{ccc}
\cos{\varphi_1}\cos{\varphi_2}-\sin{\varphi_1}\sin{\varphi_2}\cos{\phi} & \sin{\varphi_1}\cos{\varphi_2}+\cos{\varphi_1}\sin{\varphi_2}\cos{\phi}& \sin{\varphi_2}\sin{\phi}\\
-\cos{\varphi_1}\sin{\varphi_2}-\sin{\varphi_1}\cos{\varphi_2}\cos{\phi} & -\sin{\varphi_1}\cos{\varphi_2}+\cos{\varphi_1}\cos{\varphi_2}\cos{\phi}& \cos{\varphi_2}\sin{\phi}\\
\sin{\varphi_1}\sin{\phi} & -\cos{\varphi_1}\sin{\phi}& \cos{\phi}
\end{array}\right)
\]

View File

@ -1,7 +0,0 @@
% #################
\chapter{Worked examples}
% #################
Refer to the corresponding publications ...

View File

@ -1,11 +0,0 @@
% #################
\chapter{Homogenization schemes}
% #################
%\section{Introduction}
If more than one grain is simulated per integration point, a homogenization scheme is required to distribute the deformation gradient of the IP to the respective grains. The simplest choice is the \emph{isostrain approach} which simply consists in assuming the IP deformation gradient to be applicable directly to each grain.
%\section{Isostrain homogenization -- Taylor's assumption}
%\section{RGC}
cite RGC papers...

View File

@ -1,6 +0,0 @@
% #################
\chapter{Postprocessing of the results}
% #################
mentat, py\_post, gri, ParaView, TSL-OIM

View File

@ -1,21 +0,0 @@
% #################
\chapter{Preliminaries}
% #################
\section{Introduction}
For the theory and some application examples, see \citet{Roters2010}.
\section{History of the code}
?, spaghetti version,
\input{include/svn_guide}
\section{Style guide for programming the CPFEM subroutine}
Some hints
\begin{itemize}
\item This manual cannot substitute proper commenting in the Fortran code. Try to include as much comments as possible directly in the code.
\item When commenting, do not use cryptic comments such as \emph{Random is random!} -- an actual example from the code.
\end{itemize}

View File

@ -1,4 +0,0 @@
% #################
\section{Code}
% #################

View File

@ -1,4 +0,0 @@
% #################
\section{Documentation}
% #################

View File

@ -1,4 +0,0 @@
% #################
\section{Installation}
% #################

View File

@ -1,4 +0,0 @@
% #################
\section{Processing}
% #################

View File

@ -1,4 +0,0 @@
% #################
\section{Testing}
% #################

View File

@ -1,53 +0,0 @@
\section{Internal access to the version-controlled sources}
% This section is copied from the msuwiki: http://msusrv4/msuwiki/Theory%20and%20Simulation/SVN
A prerequisite for you being able to access the version-controlled software is to
\begin{enumerate}
\item valid login
\item membership in the \verb|svn| group on server \verb|musvn1|
\end{enumerate}
Please ask either Berthold Becksch\"afer (-922) or Achim Kuhl (-923) to set up your permissions accordingly.
\subsection{Windows}
\subsubsection{Putty}
Get yourself \verb|PuTTY| and \verb|PuTTYgen| from \url{http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html}.
Generate a RSA (SSH2) 2048 bit strong key pair with \verb|PuTTYgen|.
Save the private part of the key to a secure location (\verb|My Documents| or such).
Copy the public part from the \verb|PuTTYgen| window, paste it into a text-editor and save.
Append the contents of that file to \verb|~/.ssh/authorized_keys| on any workstation you can log on to.
Create a profile in \verb|PuTTY| called "\verb|musvn1|" with host \verb|musvn1.mpie.de|, your standard "\verb|MPIE\\myName|" username and specify the above location of your private key file as means of authentication.
You should then be able to connect with this profile to \verb|musvn1| WITHOUT password authentication!
\subsubsection{Tortoise}
Install the subversion-client Tortoise from \url{http://tortoisesvn.net/downloads}.
Create a directory to hold the Material Point Model subroutine on your PC.
Right-click in this folder and select "SVN checkout" from the context menu.
Specify \url{svn+ssh://musvn1/home/svn/repos/cpfem} as the URL of the desired repository.
This will use the profile named "\verb|musvn1|" from \verb|PuTTY| and should hence not ask for any authentication from your end.
\subsection{Linux workstations}
\subsubsection{Key authentication}
If not already done, generate a 2048 bit RSA key pair using
\begin{lstlisting}[language=bash]
ssh-keygen -t rsa -b 2048
\end{lstlisting}
and go for the standard options offered.
This will create "\verb|id_rsa|" (private key) and "\verb|id_rsa.pub|" (public key) within your \verb|~/.ssh| folder.
Append the public key to the list of known keys
\begin{lstlisting}[language=bash]
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
\end{lstlisting}
and try logging into another workstation with
\begin{lstlisting}[language=bash]
ssh msuwsX
\end{lstlisting}
(exchange X with $1\dots 13$).
It should \emph{not} require password authentication.
\subsubsection{Checkout}
Create a directory to hold the subversion-controlled Material Point Model routine and change into this.
Issue the command
\begin{lstlisting}[language=bash]
svn co svn+ssh://MPIE\\yourName@musvn1/home/svn/repos/cpfem
\end{lstlisting}
to copy the repository content to the current working directory.

View File

@ -1,34 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<root text="&#34;crystallite_integrateStress&#34;" comment="" color="ffffff" type="sub" style="nice">
<children>
<instruction text="&#34;Fg_new = crystallite_subF&#34;,&#34;Fp_current = crystallite_subFp0&#34;,&#34;Tstar_v = crystallite_Tstar_v&#34;,&#34;Lpguess_old = crystallite_Lp&#34;,&#34;Lpguess = crystallite_Lp&#34;,&#34;crystallite_integrateStress = .false. &#34;" comment="" color="ffffff" rotated="0"></instruction>
<call text="&#34;invFp_current = math_inv3x3(Fp_current)&#34;" comment="" color="ffffff"></call>
<alternative text="&#34;invFp_current == 0.0&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;return&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
</qFalse>
</alternative>
<instruction text="&#34;A = invFp_current ^T * Fg_new ^T * Fg_new * invFp_current&#34;" comment="" color="ffffff" rotated="0"></instruction>
<call text="&#34;constitutive_microstructure&#34;" comment="" color="ffffff"></call>
<call text="&#34;C = math_Mandel66to3333( constitutive_homogenizedC ( ) )&#34;" comment="" color="ffffff"></call>
<instruction text="&#34;NiterationStress = 0&#34;,&#34;leapfrog = 1.0&#34;,&#34;maxleap = 1024.0&#34;,&#34;jacoCounter = 0&#34;" comment="&#34;&#34;" color="ffffff" rotated="0"></instruction>
<forever text="" comment="" color="ffffff">
<qForever>
<instruction text="&#34;LP LOOP (see crystallite_integrateStress_LpLoop)&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qForever>
</forever>
<instruction text="&#34;invFp_new = invFp_current * B&#34;,&#34;invFp_new = invFp_new / math_det3x3(invFp_new)^(1.0/3.0)&#34;" comment="" color="ffffff" rotated="0"></instruction>
<call text="&#34;[Fp_new,det,error] = math_invert3x3(invFp_new)&#34;" comment="" color="ffffff"></call>
<alternative text="&#34;error&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;INVERSION FAILED: return&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
</qFalse>
</alternative>
<instruction text="&#34;Fe_new = Fg_new * invFp_new&#34;,&#34;Tstar_v = Tstar_v + p_hydro&#34;" comment="" color="ffffff" rotated="0"></instruction>
<instruction text="&#34;crystallite_P = Fe_new * Tstar_v * invFp_new^T&#34;,&#34;crystallite_Lp = Lpguess&#34;,&#34;crystallite_Tstar_v = Tstar_v&#34;,&#34;crystallite_Fp = Fp_new&#34;,&#34;crystallite_Fe = Fe_new&#34;,&#34;crystallite_integrateStress = .true.&#34;" comment="" color="ffffff" rotated="0"></instruction>
</children>
</root>

File diff suppressed because it is too large Load Diff

View File

@ -1,61 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<root text="&#34;crystallite_integrateStress LpLoop&#34;" comment="" color="ffffff" type="sub" style="nice">
<children>
<instruction text="&#34;NiterationStress = NiterationStress + 1&#34;" comment="" color="ffffff" rotated="0"></instruction>
<alternative text="&#34;NiterationStress &#62; nStress&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;TOO MANY ITERATIONS: return&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
</qFalse>
</alternative>
<instruction text="&#34;B = math_i3 - crystallite_subdt(g,i,e)*Lpguess&#34;,&#34;Tstar_v = 0.5 * C * (B^T * A * B - math_I3)&#34;,&#34;p_hydro = sum(Tstar_v(1:3))/3.0&#34;,&#34;forall (i=1:3) Tstar_v(i) = Tstar_v(i) - p_hydro&#34;" comment="" color="ffffff" rotated="0"></instruction>
<call text="&#34;[Lp_constitutive, dLp_constitutive] = constitutive_LpAndItsTangent (Tstar_v, crystallite_Temperature)&#34;" comment="" color="ffffff"></call>
<instruction text="&#34;residuum = Lpguess - Lp_constitutive&#34;" comment="" color="ffffff" rotated="0"></instruction>
<alternative text="&#34;no NaN ocuured in residuum&#34;,&#34;.and. (residuum below absolute tolerance .or. (above relevant strain .and. residuum below relative tolerance))&#34;" comment="" color="ffffff">
<qTrue>
<jump text="&#34;LOOP CONVERGED: exit LpLoop&#34;" comment="" color="ffffff"></jump>
</qTrue>
<qFalse>
</qFalse>
</alternative>
<alternative text="&#34;NaN occured in residuum .and. leapfrog == 1.0&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;NO CONVERGENCE: return&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
<alternative text="&#34;leapfrog &#62; 1.0&#34;,&#34;.and. (worse residuum .or. residuum changed sign .or. NaN occured)&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;maxleap = 0.5 * leapfrog&#34;,&#34;leapfrog = 1.0&#34;,&#34;jacoCounter = 0&#34;,&#34;Lpguess = Lpguess_old&#34;,&#34;residuum = residuum_old&#34;" comment="&#34;&#34;" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
<alternative text="&#34;mod(jacoCounter,iJacoLpresiduum) == 0&#34;" comment="&#34;&#34;" color="ffffff">
<qTrue>
<instruction text="&#34;dTdLp = - 0.5 * crystallite_subdt * C * (A*B + B^T*A)&#34;,&#34;dRdLp = math_identity2nd(9) - dLp_constitutive * dTdLp&#34;" comment="" color="ffffff" rotated="0"></instruction>
<call text="&#34;[invdRdLp,dummy,error] = math_invert(9,dRdLp)&#34;" comment="" color="ffffff"></call>
<alternative text="&#34;error&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;INVERSION FAILED: return&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
</qFalse>
</alternative>
</qTrue>
<qFalse>
</qFalse>
</alternative>
<instruction text="&#34;jacoCounter = jacoCounter + 1&#34;,&#34;residuum_old = residuum&#34;,&#34;Lpguess_old = Lpguess&#34;" comment="&#34;&#34;" color="ffffff" rotated="0"></instruction>
<alternative text="&#34;NiterationStress &#62; 1 .and. leapfrog &#60; maxleap&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;leapfrog = 2.0 * leapfrog&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
</qFalse>
</alternative>
</qFalse>
</alternative>
</qFalse>
</alternative>
<instruction text="&#34;Lpguess = Lpguess - leapfrog * invdRdLp * residuum&#34;" comment="" color="ffffff" rotated="0"></instruction>
</children>
</root>

File diff suppressed because it is too large Load Diff

View File

@ -1,35 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<root text="&#34;crystallite_stressAndItsTangent&#34;" comment="" color="ffffff" type="sub" style="nice">
<children>
<alternative text="&#34;crystallite_requested&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;constitutive_subState0 = constitutive_partionedState0 crystallite_subFrac = 0.0&#34;,&#34;crystallite_subFp0 = crystallite_partionedFp0 crystallite_subStep = 2.0&#34;,&#34;crystallite_subLp0 = crystallite_partionedLp0 crystallite_onTrack = .true.&#34;,&#34;crystallite_subF0 = crystallite_partionedF0 crystallite_converged = .false.&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
</qFalse>
</alternative>
<instruction text="&#34;NiterationCrystallite = 0&#34;" comment="" color="ffffff" rotated="0"></instruction>
<while text="&#34;CRYSTALLITE LOOP: any: crystallite_subStep &#62; subStepMin&#34;" comment="" color="ffffff">
<qWhile>
<instruction text="&#34;(see crystallite_stressAndItsTangent_CrystalliteLoop.nsd)&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qWhile>
</while>
<alternative text="&#34;.not. crystallite_converged&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;ELASTIC RESPONSE:&#34;" comment="" color="ffffff" rotated="0"></instruction>
<call text="&#34;Fe_guess = crystallite_partionedF * crystallite_partionedFp0 ^ -1&#34;" comment="" color="ffffff"></call>
<call text="&#34;Tstar = 0.5 * constitutive_homogenizedC * ( Fe_guess ^ T * Fe_guess - math_I3 )&#34;" comment="" color="ffffff"></call>
<call text="&#34;crystallite_P = Fe_guess * Tstar * crystallite_partionedFp0 ^ -T&#34;" comment="" color="ffffff"></call>
</qTrue>
<qFalse>
</qFalse>
</alternative>
<alternative text="&#34;updateJaco&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;STIFFNESS CALCULATION: (see crystallite_stressAndItsTangent_StiffnessCalculation.nsd)&#34;" comment="&#34;&#34;" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
</qFalse>
</alternative>
</children>
</root>

File diff suppressed because it is too large Load Diff

View File

@ -1,57 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<root text="&#34;crystallite_stressAndItsTangent (Crystallite Loop)&#34;" comment="" color="ffffff" type="sub" style="nice">
<children>
<instruction text="&#34;NiterationCrystallite = NiterationCrystallite + 1&#34;" comment="" color="ffffff" rotated="0"></instruction>
<alternative text="&#34;any: .not. crystallite_converged .and. .not. crystallite_localConstitution&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;all: crystallite_converged = crystallite_converged .and. crystallite_localConstitution&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
</qFalse>
</alternative>
<alternative text="&#34;crystallite_converged&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;WINDING FORWARD: &#34;,&#34;crystallite_subFrac = crystallite_subFrac + crystallite_subStep&#34;,&#34;crystallite_subStep = min(1.0 - _crystallite_subFrac, 2.0 * crystallite_subStep)&#34;" comment="" color="ffffff" rotated="0"></instruction>
<alternative text="&#34;crystallite_subStep &#62; subStepMin&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;crystallite_subF0 = crystallite_subF&#34;,&#34;crystallite_subFp0 = crystallite_Fp&#34;,&#34;crystallite_subLp0 = crystallite_Lp&#34;,&#34;constitutive_subState0 = crystallite_state&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
</qFalse>
</alternative>
</qTrue>
<qFalse>
<instruction text="&#34;CUTBACK:&#34;,&#34;crystallite_subStep = 0.5 * crystallite_subStep&#34;,&#34;crystallite_Fp = crystallite_subFp0&#34;,&#34;crystallite_Lp = crystallite_subLp0&#34;,&#34;constitutive_state = crystallite_subState0&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qFalse>
</alternative>
<instruction text="&#34;crystallite_onTrack = crystallite_subStep &#62; subStepMin&#34;" comment="" color="ffffff" rotated="0"></instruction>
<alternative text="&#34;crystallite_onTrack&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;crystallite_subF = crystallite_subF0 + crystallite_subStep * ( crystallite_partionedF - crystallite_partionedF0)&#34;,&#34;crystallite_subdt = crystallite_subStep * crystallite_dt&#34;,&#34;crystallite_converged = .false.&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
</qFalse>
</alternative>
<call text="&#34;crystallite_updateState&#34;" comment="&#34;&#34;" color="ffffff"></call>
<instruction text="&#34;NiterationState = 0&#34;" comment="" color="ffffff" rotated="0"></instruction>
<for text="&#34;STATE LOOP: any: crystallite_requested .and. crystallite_onTrack .and. .not. crystallite_converged&#34;,&#34; .and. NiterationState &#60; ncryst&#34;" comment="" color="ffffff">
<qFor>
<instruction text="&#34;NiterationState = NiterationState + 1&#34;" comment="" color="ffffff" rotated="0"></instruction>
<alternative text="&#34;crystallite_requested .and. crystallite_onTrack .and. .not. crystallite_converged&#34;" comment="" color="ffffff">
<qTrue>
<call text="&#34;crystallite_onTrack = crystallite_integrateStress&#34;" comment="&#34;&#34;" color="ffffff"></call>
</qTrue>
<qFalse>
</qFalse>
</alternative>
<alternative text="&#34;crystallite_requested .and. crystallite_onTrack .and. .not. crystallite_converged&#34;" comment="" color="ffffff">
<qTrue>
<call text="&#34;crystallite_converged = crystallite_updateState&#34;" comment="&#34;&#34;" color="ffffff"></call>
</qTrue>
<qFalse>
</qFalse>
</alternative>
</qFor>
</for>
</children>
</root>

View File

@ -1,44 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<root text="&#34;crystallite_stressAndItsTangent (stiffness calculation)&#34;" comment="" color="ffffff" type="sub" style="nice">
<children>
<alternative text="&#34;crystallite_converged&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;myState = constitutive_state&#34;,&#34;myF = crystallite_subF&#34;,&#34;myFp = crystallite_Fp&#34;,&#34;myFe = crystallite_Fe&#34;,&#34;myLp = crystallite_Lp&#34;,&#34;myP = crystallite_P&#34;" comment="" color="ffffff" rotated="0"></instruction>
<for text="&#34;k = 1 , 3&#34;" comment="" color="ffffff">
<qFor>
<while text="&#34;l = 1 , 3&#34;" comment="" color="ffffff">
<qWhile>
<instruction text="&#34;crystallite_subF(:,:) = myF&#34;,&#34;crystallite_subF(k,l) = crystallite_subF(k,l) + pert_Fg&#34;" comment="" color="ffffff" rotated="0"></instruction>
<instruction text="&#34;onTrack = .true.&#34;,&#34;converged = .false.&#34;,&#34;NiterationState = 0&#34;" comment="" color="ffffff" rotated="0"></instruction>
<for text="&#34;STIFFNESS LOOP: .not. converged .and. onTrack .and. NiterationState &#60; nState&#34;" comment="" color="ffffff">
<qFor>
<instruction text="&#34;NiterationState = NiterationState + 1&#34;" comment="" color="ffffff" rotated="0"></instruction>
<call text="&#34;onTrack = crystallite_integrateStress&#34;" comment="" color="ffffff"></call>
<alternative text="&#34;onTrack&#34;" comment="&#34;&#34;" color="ffffff">
<qTrue>
<call text="&#34;converged = crystallite_updateState&#34;" comment="" color="ffffff"></call>
</qTrue>
<qFalse>
</qFalse>
</alternative>
</qFor>
</for>
<alternative text="&#34;converged&#34;" comment="" color="ffffff">
<qTrue>
<instruction text="&#34;crystallite_dPdF = ( crystallite_P - myP ) / pert_Fg&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
</qFalse>
</alternative>
<instruction text="&#34;constitutive_state = myState&#34;,&#34;crystallite_Fp = myFp&#34;,&#34;crystallite_Fe = myFe&#34;,&#34;crystallite_Lp = myLp&#34;,&#34;crystallite_P = myP&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qWhile>
</while>
</qFor>
</for>
</qTrue>
<qFalse>
<instruction text="&#34;crystallite_dPdF = crystallite_fallbackdPdF&#34;" comment="" color="ffffff" rotated="0"></instruction>
</qFalse>
</alternative>
</children>
</root>

View File

@ -1,16 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<root text="&#34;crystallite_updateState&#34;" comment="" color="ffffff" type="sub" style="nice">
<children>
<instruction text="&#34;residuum = ( constitutive_state - constitutive_subState0 ) - constitutive_subdt * constitutive_dotState ( ... )&#34;" comment="&#34;&#34;" color="ffffff" rotated="0"></instruction>
<alternative text="&#34;NaN occured in residuum&#34;" comment="&#34;&#34;" color="ffffff">
<qTrue>
<instruction text="&#34;NO CONVERGENCE: return&#34;" comment="&#34;&#34;" color="ffffff" rotated="0"></instruction>
</qTrue>
<qFalse>
</qFalse>
</alternative>
<instruction text="&#34;constitutive_state = constitutive_state - residuum&#34;" comment="&#34;&#34;" color="ffffff" rotated="0"></instruction>
<instruction text="&#34;crystallite_updateState = abs ( residuum / constitutive_state ) &#60; rTol_crystalliteState&#34;" comment="&#34;&#34;" color="ffffff" rotated="0"></instruction>
<instruction text="&#34;return&#34;" comment="&#34;&#34;" color="ffffff" rotated="0"></instruction>
</children>
</root>

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +0,0 @@
Nassi-Schneidermann-Diagrams for selected functions and subroutines:
- *.nsd and *.pdf files created with the software "Structorizer" Version 3.12

Some files were not shown because too many files have changed in this diff Show More