Engineering Data Curve Fit

Engineering Data Curve Fit
The container used by Engineering Data to maintain data for curve fitting operations.

Data Entities

CurveFit

The entity to store curve fitting information.

Properties

CurveFitData

The coefficients of material model that approximates the experimental test data.

Type     DataReference
Read Only    No
DependentPropertyColl

The collection of experimental test data, e.g., Uniaxial Test data (Engineering Strain Vs Engineering Stress).

Type     DataReferenceSet
Read Only    No
DisplayText

The general property that defines the user-visible name of an entity. This property is defined for all data entities but is used only in those entities that present a label in the user interface.

Type     string
Read Only    No
UnitSystemWhenSolved

The unit system of the coefficients of material model.

Type     string
Read Only    No

Methods

AddTestData

Adds test data from a given curve fitting.

Required Arguments

TestData    The test data property to add.
    Type     DataReference
Example

The following example loads a material with experimental test data and a Neo-Hookean hyperelastic property.

    template = GetTemplate(TemplateName="EngData")
    system = template.CreateSystem()
    engineeringData = system.GetContainer(ComponentName="Engineering Data")
    neopreneRubber = engineeringData.ReadMaterial(
        Name="Neoprene Rubber",
        Source="Hyperelastic_Materials.xml")
    neoHookeanProperty = neopreneRubber.GetProperty(Name="Neo-Hookean")
    neoHookeanPropertyData = neoHookeanProperty.GetPropertyData(Name="Neo-Hookean")
    curveFit = neoHookeanPropertyData.CreateCurveFitting(
        Type="Neo-Hookean",
        Definition="")
    uniaxialProperty = neopreneRubber.GetProperty(Name="Uniaxial Test Data")
    curveFit.AddTestData(TestData=uniaxialProperty)
    biaxialProperty = neopreneRubber.GetProperty(Name="Biaxial Test Data")
    curveFit.AddTestData(TestData=biaxialProperty)
    shearProperty = neopreneRubber.GetProperty(Name="Shear Test Data")
    curveFit.AddTestData(TestData=shearProperty)
    volumetricProperty = neopreneRubber.GetProperty(Name="Volumetric Test Data")
    curveFit.AddTestData(TestData=volumetricProperty)
    curveFit.RemoveTestData(TestData=uniaxialProperty)
    curveFit.AddTestData(TestData=uniaxialProperty)
    curveFit.Solve()
    curveFit.CopyCoefficients(Destination=neoHookeanPropertyData)
    curveFit.Delete()

CopyCoefficients

Copies the fitted coefficients from the curve fitting to the property data provided.

Required Arguments

Destination    The property data that will receive the coefficients.
    Type     DataReference
Example

The following example loads a material with experimental test data and a Neo-Hookean hyperelastic property.

    template = GetTemplate(TemplateName="EngData")
    system = template.CreateSystem()
    engineeringData = system.GetContainer(ComponentName="Engineering Data")
    neopreneRubber = engineeringData.ReadMaterial(
        Name="Neoprene Rubber",
        Source="Hyperelastic_Materials.xml")
    neoHookeanProperty = neopreneRubber.GetProperty(Name="Neo-Hookean")
    neoHookeanPropertyData = neoHookeanProperty.GetPropertyData(Name="Neo-Hookean")
    curveFit = neoHookeanPropertyData.CreateCurveFitting(
        Type="Neo-Hookean",
        Definition="")
    uniaxialProperty = neopreneRubber.GetProperty(Name="Uniaxial Test Data")
    curveFit.AddTestData(TestData=uniaxialProperty)
    biaxialProperty = neopreneRubber.GetProperty(Name="Biaxial Test Data")
    curveFit.AddTestData(TestData=biaxialProperty)
    shearProperty = neopreneRubber.GetProperty(Name="Shear Test Data")
    curveFit.AddTestData(TestData=shearProperty)
    volumetricProperty = neopreneRubber.GetProperty(Name="Volumetric Test Data")
    curveFit.AddTestData(TestData=volumetricProperty)
    curveFit.RemoveTestData(TestData=uniaxialProperty)
    curveFit.AddTestData(TestData=uniaxialProperty)
    curveFit.Solve()
    curveFit.CopyCoefficients(Destination=neoHookeanPropertyData)
    curveFit.Delete()

Delete

Deletes a curve fitting.

Example

The following example loads a material with experimental test data and a Neo-Hookean hyperelastic property.

    template = GetTemplate(TemplateName="EngData")
    system = template.CreateSystem()
    engineeringData = system.GetContainer(ComponentName="Engineering Data")
    neopreneRubber = engineeringData.ReadMaterial(
        Name="Neoprene Rubber",
        Source="Hyperelastic_Materials.xml")
    neoHookeanProperty = neopreneRubber.GetProperty(Name="Neo-Hookean")
    neoHookeanPropertyData = neoHookeanProperty.GetPropertyData(Name="Neo-Hookean")
    curveFit = neoHookeanPropertyData.CreateCurveFitting(
        Type="Neo-Hookean",
        Definition="")
    uniaxialProperty = neopreneRubber.GetProperty(Name="Uniaxial Test Data")
    curveFit.AddTestData(TestData=uniaxialProperty)
    biaxialProperty = neopreneRubber.GetProperty(Name="Biaxial Test Data")
    curveFit.AddTestData(TestData=biaxialProperty)
    shearProperty = neopreneRubber.GetProperty(Name="Shear Test Data")
    curveFit.AddTestData(TestData=shearProperty)
    volumetricProperty = neopreneRubber.GetProperty(Name="Volumetric Test Data")
    curveFit.AddTestData(TestData=volumetricProperty)
    curveFit.RemoveTestData(TestData=uniaxialProperty)
    curveFit.AddTestData(TestData=uniaxialProperty)
    curveFit.Solve()
    curveFit.CopyCoefficients(Destination=neoHookeanPropertyData)
    curveFit.Delete()

GetChartData

Returns a generated graph data for the specified source data.

Valid source data are:

Material Property
Material Property Data

Return    The graph data for the specified source data.
    Type    Dictionary<string, Object>
RemoveTestData

Removes test data from a given curve fitting.

Required Arguments

TestData    The test data property to add.
    Type     DataReference
Example

The following example loads a material with experimental test data and a Neo-Hookean hyperelastic property.

    template = GetTemplate(TemplateName="EngData")
    system = template.CreateSystem()
    engineeringData = system.GetContainer(ComponentName="Engineering Data")
    neopreneRubber = engineeringData.ReadMaterial(
        Name="Neoprene Rubber",
        Source="Hyperelastic_Materials.xml")
    neoHookeanProperty = neopreneRubber.GetProperty(Name="Neo-Hookean")
    neoHookeanPropertyData = neoHookeanProperty.GetPropertyData(Name="Neo-Hookean")
    curveFit = neoHookeanPropertyData.CreateCurveFitting(
        Type="Neo-Hookean",
        Definition="")
    uniaxialProperty = neopreneRubber.GetProperty(Name="Uniaxial Test Data")
    curveFit.AddTestData(TestData=uniaxialProperty)
    biaxialProperty = neopreneRubber.GetProperty(Name="Biaxial Test Data")
    curveFit.AddTestData(TestData=biaxialProperty)
    shearProperty = neopreneRubber.GetProperty(Name="Shear Test Data")
    curveFit.AddTestData(TestData=shearProperty)
    volumetricProperty = neopreneRubber.GetProperty(Name="Volumetric Test Data")
    curveFit.AddTestData(TestData=volumetricProperty)
    curveFit.RemoveTestData(TestData=uniaxialProperty)
    curveFit.AddTestData(TestData=uniaxialProperty)
    curveFit.Solve()
    curveFit.CopyCoefficients(Destination=neoHookeanPropertyData)
    curveFit.Delete()

Solve

The curve fitting module will solve for the coefficients which most nearly approximate the experimental test data.