Skip to content

Commit

Permalink
Added P91LAROMANCEStressUpdate
Browse files Browse the repository at this point in the history
Closes #141
  • Loading branch information
tophmatthews authored and lynnmunday committed Nov 17, 2020
1 parent 5e82586 commit 11db9ab
Show file tree
Hide file tree
Showing 7 changed files with 9,872 additions and 0 deletions.
25 changes: 25 additions & 0 deletions doc/content/source/materials/P91LAROMANCEStressUpdate.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# P91LAROMANCEStressUpdate

## Description

`P91LAROMANCEStressUpdate` implements the necessary coefficients to compute a creep rate for HT9
stainless steel by sampling a Los Alamos Reduced Order Model Applied to Nonlinear Constitutive
Equations (LAROMANCE) model. `P91LAROMANCEStressUpdate` implements the coefficients required by
[ADLAROMANCEStressUpdateBase](ADLAROMANCEStressUpdateBase.md), which in turn utilizes the radial
return method implemented in [ADRadialReturnStressUpdate](/ADRadialReturnStressUpdate.md) to
compute a creep rate. The coefficients are formulated by many precomputed lower-length scale
simulations, and calibrated to Legendre polynomials. See
ADLAROMANCEStressUpdateBase](ADLAROMANCEStressUpdateBase.md) for a more extensive review of the
model.

## Example Input Syntax

!listing test/tests/tensor_mechanics/ht9_rom/2drz.i block=Materials/rom_stress_prediction

!syntax parameters /Materials/tensor_mechanics/P91LAROMANCEStressUpdate

!syntax inputs /Materials/tensor_mechanics/P91LAROMANCEStressUpdate

!syntax children /Materials/tensor_mechanics/P91LAROMANCEStressUpdate

!bibtex bibliography
48 changes: 48 additions & 0 deletions include/materials/P91LAROMANCEStressUpdate.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
/******************************************************************************/
/* DO NOT MODIFY THIS HEADER */
/* */
/* Copyright 2015 Battelle Energy Alliance, LLC */
/* Copyright (2017) Los Alamos National Security, LLC */
/* ALL RIGHTS RESERVED */
/* */
/* This material was produced under U.S. Government contract */
/* DE-AC52-06NA25396 and DE-AC07-05ID14517 for Los Alamos National */
/* Laboratory, which is operated by Los Alamos National Security, LLC and */
/* Idaho National Laboratory, which is operated by Battelle Energy Alliance, */
/* LLC for the U.S. Department of Energy. The Government is granted for */
/* itself and others acting on its behalf a paid-up, nonexclusive, */
/* irrevocable worldwide license in this material to reproduce, prepare */
/* derivative works, and perform publicly and display publicly. Beginning */
/* five (5) years after May 17, 2017, subject to additional five-year */
/* worldwide renewals, the Government is granted for itself and others acting */
/* on its behalf a paid-up, nonexclusive, irrevocable worldwide license in */
/* this material to reproduce, prepare derivative works, distribute copies to */
/* the public, perform publicly and display publicly, and to permit others to */
/* do so. NEITHER THE UNITED STATES NOR THE UNITED STATES DEPARTMENT OF */
/* ENERGY, NOR LOS ALAMOS NATIONAL SECURITY, LLC, NOR BATTELLE ENERGY */
/* ALLIANCE, LLC, NOR ANY OF THEIR CONTRACTORS, NOR ANY OF THEIR EMPLOYEES, */
/* MAKES ANY WARRANTY, EXPRESS OR IMPLIED, OR ASSUMES ANY LEGAL LIABILITY OR */
/* RESPONSIBILITY FOR THE ACCURACY, COMPLETENESS, OR USEFULNESS OF ANY */
/* INFORMATION, APPARATUS, PRODUCT, OR PROCESS DISCLOSED, OR REPRESENTS THAT */
/* ITS USE WOULD NOT INFRINGE PRIVATELY OWNED RIGHTS. */
/******************************************************************************/

#pragma once

#include "ADLAROMANCEStressUpdateBase.h"

class P91LAROMANCEStressUpdate : public ADLAROMANCEStressUpdateBase
{
public:
static InputParameters validParams();

P91LAROMANCEStressUpdate(const InputParameters & parameters);

protected:
virtual std::vector<std::vector<std::vector<ROMInputTransform>>> getTransform() override;
virtual std::vector<std::vector<std::vector<Real>>> getTransformCoefs() override;
virtual std::vector<std::vector<std::vector<Real>>> getNormalizationLimits() override;
virtual std::vector<std::vector<std::vector<Real>>> getInputLimits() override;
virtual std::vector<std::vector<std::vector<Real>>> getCoefs() override;
virtual std::vector<unsigned int> getTilings() override;
};
Loading

0 comments on commit 11db9ab

Please sign in to comment.