skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Shroud: A tool for creating a Fortran interface for a C++ library

Authors:
Publication Date:
Research Org.:
Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
Sponsoring Org.:
USDOE
OSTI Identifier:
1343845
Report Number(s):
LLNL-CONF-723061
DOE Contract Number:
AC52-07NA27344
Resource Type:
Conference
Resource Relation:
Conference: Presented at: Nuclear Explosives Code Developers Conference, Livermore, CA, United States, Oct 17 - Oct 21, 2016
Country of Publication:
United States
Language:
English
Subject:
97 MATHEMATICS, COMPUTING, AND INFORMATION SCIENCE

Citation Formats

Taylor, L A. Shroud: A tool for creating a Fortran interface for a C++ library. United States: N. p., 2017. Web.
Taylor, L A. Shroud: A tool for creating a Fortran interface for a C++ library. United States.
Taylor, L A. Tue . "Shroud: A tool for creating a Fortran interface for a C++ library". United States. doi:. https://www.osti.gov/servlets/purl/1343845.
@article{osti_1343845,
title = {Shroud: A tool for creating a Fortran interface for a C++ library},
author = {Taylor, L A},
abstractNote = {},
doi = {},
journal = {},
number = ,
volume = ,
place = {United States},
year = {Tue Feb 07 00:00:00 EST 2017},
month = {Tue Feb 07 00:00:00 EST 2017}
}

Conference:
Other availability
Please see Document Availability for additional information on obtaining the full-text document. Library patrons may search WorldCat to identify libraries that hold this conference proceeding.

Save / Share:
  • A wrapper serves as a software interface between non-object-oriented software and software that must be used but exists in a form that is not object-oriented. a tool designed to accomplish the wrapping function for a library of Fortran routines used by the Electrical Engineering Department at Lawrence Livermore National Laboratory is described. 7 refs., 6 figs. (DWL)
  • Shroud is a utility to create a Fortran and C interface for a C++ library. An existing C++ library API is described in an input file. Shroud reads the file and creates source files which can be compiled to provide a Fortran API for the library.
  • The SparsLinC library, written in C, has been developed for exploiting sparsity in automatic differentiation of codes. Issues pertaining to the proper interface to the library from Fortran programs are discussed, including the interpretation of Fortran INTEGERs as C pointers, and the representation of Fortran precisions in C. The Appendix contains the full set of Fortran Interfaces to the SparsLinC library.
  • Sweeping algorithms have become very mature and can create a semi-structured mesh on a large set of solids. However, these algorithms require that all linking surfaces be mappable or submappable. This restriction excludes solids with imprints or protrusions on the linking surfaces. The grafting algorithm allows these solids to be swept. It then locally modifies the position and connectivity of the nodes on the linking surfaces to align with the graft surfaces. Once a high-quality surface mesh is formed on the graft surface, it is swept along the branch creating a 2 3/4-D mesh.