Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Added P91LAROMANCEStressUpdate #142

Merged
merged 9 commits into from
Nov 17, 2020
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

for later, I just noticed the HT9 reference here

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