Volume Weighted Weibull

Initialize a variable with randomly generated numbers following a volume-weighted Weibull distribution

The VolumeWeightedWeibull class generates a spatially randomized distribution of a variable following a Weibull distribution, but weighted by the element volume to account for the fact that larger volumes are more likely to contain defects, and would thus have a reduced strength. This class follows the approach documented in Strack et al. (2015), and using it to describe local strength for fracture models minimizes mesh size dependence.

The randomized value of a given variable used to characterize a strength can be expressed as: (1) where is the median value of the strength variable, is the reference volume, which is the volume of a test specimen that has a median strength equal to , is a uniform random number on the interval from 0 to 1, and is the Weibull modulus.

This has two important differences from using the standard Weibull distribution, which can also be used to define a randomized strength in MOOSE using a combination of the WeibullDistribution object in the stochastic_tools module and the MOOSE RandomIC object:

1. This Weibull distribution is defined by two parameters: the Weibull modulus, , and the median value of the randomized variable, . This in contrast to the standard version, which has three parameters: the Weibull modulus, , the shape parameter, , and the location parameter, . The distribution generated by this Weibull distribution implicitly assumes that . The value for for the standard set of parameters in a Weibull distribution can be computed from and as:

2. The value of the samples from the standard Weibull distribution is scaled by the factor: As a result of this scaling, elements larger than the reference volume typically have decreased strength, and elements smaller than the reference volume have increased strength (because is typically greater than 1).

Input Parameters

  • reference_volumeReference volume (of a test specimen)

    C++ Type:double

    Options:

    Description:Reference volume (of a test specimen)

  • variableThe variable this initial condition is supposed to provide values for.

    C++ Type:VariableName

    Options:

    Description:The variable this initial condition is supposed to provide values for.

  • weibull_modulusWeibull modulus

    C++ Type:double

    Options:

    Description:Weibull modulus

Required Parameters

  • blockThe list of block ids (SubdomainID) that this object will be applied

    C++ Type:std::vector

    Options:

    Description:The list of block ids (SubdomainID) that this object will be applied

  • boundaryThe list of boundary IDs from the mesh where this boundary condition applies

    C++ Type:std::vector

    Options:

    Description:The list of boundary IDs from the mesh where this boundary condition applies

  • legacy_generatorFalseDetermines whether or not the legacy generator (deprecated) should be used.

    Default:False

    C++ Type:bool

    Options:

    Description:Determines whether or not the legacy generator (deprecated) should be used.

  • medianMedian value of property measured in a specimen of volume equal to reference_volume

    C++ Type:double

    Options:

    Description:Median value of property measured in a specimen of volume equal to reference_volume

  • seed0Seed value for the random number generator

    Default:0

    C++ Type:unsigned int

    Options:

    Description:Seed value for the random number generator

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector

    Options:

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Options:

    Description:Set the enabled status of the MooseObject.

  • ignore_uo_dependencyFalseWhen set to true, a UserObject retrieved by this IC will not be executed before the this IC

    Default:False

    C++ Type:bool

    Options:

    Description:When set to true, a UserObject retrieved by this IC will not be executed before the this IC

Advanced Parameters

Input Files

References

  1. O.E. Strack, R.B. Leavy, and R.M. Brannon. Aleatory uncertainty and scale effects in computational damage models for failure and fragmentation. International Journal for Numerical Methods in Engineering, 102(3-4):468–495, April 2015. doi:10.1002/nme.4699.[BibTeX]