\documentclass[10pt]{article}

\usepackage{fullpage}
\usepackage{setspace}
\usepackage{parskip}
\usepackage{titlesec}
\usepackage[section]{placeins}
\usepackage{xcolor}
\usepackage{breakcites}
\usepackage{lineno}
\usepackage{hyphenat}





\PassOptionsToPackage{hyphens}{url}
\usepackage[colorlinks = true,
            linkcolor = blue,
            urlcolor  = blue,
            citecolor = blue,
            anchorcolor = blue]{hyperref}
\usepackage{etoolbox}
\makeatletter
\patchcmd\@combinedblfloats{\box\@outputbox}{\unvbox\@outputbox}{}{%
  \errmessage{\noexpand\@combinedblfloats could not be patched}%
}%
\makeatother


\usepackage{natbib}




\renewenvironment{abstract}
  {{\bfseries\noindent{\abstractname}\par\nobreak}\footnotesize}
  {\bigskip}

\titlespacing{\section}{0pt}{*3}{*1}
\titlespacing{\subsection}{0pt}{*2}{*0.5}
\titlespacing{\subsubsection}{0pt}{*1.5}{0pt}


\usepackage{authblk}


\usepackage{graphicx}
\usepackage[space]{grffile}
\usepackage{latexsym}
\usepackage{textcomp}
\usepackage{longtable}
\usepackage{tabulary}
\usepackage{booktabs,array,multirow}
\usepackage{amsfonts,amsmath,amssymb}
\providecommand\citet{\cite}
\providecommand\citep{\cite}
\providecommand\citealt{\cite}
% You can conditionalize code for latexml or normal latex using this.
\newif\iflatexml\latexmlfalse
\providecommand{\tightlist}{\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}%

\AtBeginDocument{\DeclareGraphicsExtensions{.pdf,.PDF,.eps,.EPS,.png,.PNG,.tif,.TIF,.jpg,.JPG,.jpeg,.JPEG}}

\usepackage[utf8]{inputenc}
\usepackage[english]{babel}



\usepackage{float}








\begin{document}

\title{HatchFrac: A fast open-source DFN modeling software}



\author[1]{Weiwei Zhu}%
\author[1]{Siarhei Khirevich}%
\author[1]{Tad W Patzek}%
\affil[1]{Ali I. Al-Naimi Petroleum Engineering Research Center (ANPERC)}%


\vspace{-1em}



  
  \date{May 20, 2024}


\begingroup
\let\center\flushleft
\let\endcenter\endflushleft
\maketitle
\endgroup





\selectlanguage{english}
\begin{abstract}
This paper introduces a comprehensive C++ software package, HatchFrac,
for stochastic modelling of fracture networks in two and three
dimensions. Two main methods, the inverse CDF method and
acceptance-rejection method, are applied to generate random variables
from the stochastic distributions commonly used in discrete fracture
network (DFN) modelling. The multilayer per-ceptron (MLP) machine
learning approach, combined with the inverse CDF method, is implemented
to generate random variables following any sampling distribution. To
make the code faster, we extend the Newman-Ziff to determine clusters in
the fracture networks. When combined with the block method, the Ziff
algorithm improves the coding efficiency significantly. The software
generates the T-type fracture intersections in the network, which can be
used in applications involving fracture growth or incorporating
geomechanics. We introduce three applications of HatchFrac that
demonstrate the versatility of our software: percolation analysis,
fracture intensity analysis, and flow and connectivity analysis.%
\end{abstract}%



\sloppy




\selectlanguage{english}
\FloatBarrier
\end{document}

