doctype xml
SMTK_AttributeResource(Version="3")
  Categories
    Cat TEM3P-Linear-Thermal
    Cat TEM3P-Nonlinear-Thermal

  Definitions
    // Definitions specific to TEM3P-Thermal
    AttDef(Type="HeatSource" BaseType="" Abstract="true" Unique="false" Version="0")
      AssociationsDef(Name="HeatSourceAssociations" Version="0"
        NumberOfRequiredValues="0" Extensible="true")
        MembershipMask volume

    = '\n'
    AttDef(Type="LossyDielectricHeat" Label="Lossy Dielectric Heat Source" BaseType="HeatSource" Unique="true" Version="0")
      ItemDefinitions
        // Specify ConditionType as discrete, even though only 1 value (RFHeating) currently used
        // Note uses NERSC Directory in ACE3P.sbt
        String(Name="ConditionType" Label="Type" Version="0")
          Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
          ChildrenDefinitions
            Double(Name="DielectricConstantE" Label="Dielectric Constant" Version="0")
              BriefDescription The dielectric constant
              Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
              DefaultValue 1.0
              RangeInfo #[Min(Inclusive="true") 0.0]
            Double(Name="LossTangentE" Label="Loss Tangent" Version="0")
              BriefDescription The dielectric loss tangent
              Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
              DefaultValue 0.0
            Int(Name="WhichMode" Label="Mode Number" Version="0")
              BriefDescription The mode number calculated from the omega3p or s3p data imported into tem3p
              Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
              DefaultValue 0
              RangeInfo #[Min(Inclusive="true") 0]

            // Specify Method as discrete, even though only 1 value (Powerinput) currently used
            String(Name="Method" Label="Method" Version="0")
              Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
              ChildrenDefinitions
                Double(Name="TargetPowerinput" Label="Target Power Input" Units="W" Version="0")
                  BriefDescription Total power input to the system
                  Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
                  DefaultValue 0
                Double(Name="Sigma" Label="Electrical Conductivity (Sigma)" Units="S/m" Version="0")
                  Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
                  RangeInfo #[Min(Inclusive="true")] 0.0
                Double(Name="TargetGradient" Label="Target Gradient" Units="V/m" Version="0")
                  BriefDescription Accelerating gradient
                  Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
                  DefaultValue 0.0
                Double(Name="DutyFactor" Label="Duty Factor" Version="0")
                  BriefDescription Fraction of time during operation for average power calculation
                  Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
                  DefaultValue 0.0
                  RangeInfo #[Min(inclusive="true") 0.0] #[Max(Inclusive="true") 1.0]
                Double(Name="StartPoint" Label="Start Point" NumberOfRequiredValues="3" Units="m" Version="0")
                  BriefDescription The coordinates of the start point for gradient integration
                  Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
                  DefaultValue 0,0,0
                Double(Name="EndPoint" Label="End Point" NumberOfRequiredValues="3" Units="m" Version="0")
                  BriefDescription The coordinates of the end point for gradient integration
                  Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
                  DefaultValue 0,0,1
                Double(Name="TargetPowerLoss" Label="Target Power Loss" Units="W" Version="0")
                  BriefDescription Total power loss on metallic surface
                  Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
                  DefaultValue 0
              // (Method)
              DiscreteInfo
                Structure
                  Value(Enum="Power Input") Powerinput
                  Items
                    Item TargetPowerinput
                Structure
                  Value(Enum="Target Gradient Scaling") Gradient
                  Items
                    Item Sigma
                    Item TargetGradient
                    Item DutyFactor
                    Item StartPoint
                    Item EndPoint
                Structure
                  Value(Enum="Target Power Loss Scaling") PowerLoss
                  Items
                    Item TargetPowerLoss
                    Item Sigma

          // ConditionType
          DiscreteInfo(DefaultIndex="0")
            Structure
              Value(Enum="RF Heating") RFHeating
              Items
                Item DielectricConstantE
                Item LossTangentE
                Item WhichMode
                Item Method

    = '\n'
    AttDef(Type="ExternalVolumeHeating" Label="External Volume Heating" BaseType="HeatSource" Version="0")
      ItemDefinitions
        //- Use hidden item to hard-code Condition type
        String(Name="ConditionType" AdvanceLevel="99")
          DefaultValue ExtVHeating
          Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
        File(Name="ExtVHeatingFile" Label="External Heating Map File" ShouldExist="true" NumberOfRequiredValues="1" Version="0")
          BriefDescription File name of the external volume heating data
          Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]

    = '\n'
    AttDef(Type="ThermalShell" Label="Thermal" BaseType="" Unique="true" Version="0")
      AssociationsDef(Name="ThermalShellAssociations" Version="0"
        NumberOfRequiredValues="0" Extensible="true")
        MembershipMask face
      ItemDefinitions
        Int(Name="BasisOrder" Label="Basis Order" Version="0")
          BriefDescription Order of the basis functions of shell elements
          Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
          DefaultValue 1
          RangeInfo #[Min(Inclusive="true") 0]
        Double(Name="Thickness" Label="Thickness" Version="0")
          BriefDescription Thickness of the shell
          Categories #[Cat TEM3P-Linear-Thermal] #[Cat TEM3P-Nonlinear-Thermal]
          DefaultValue 0.0
          RangeInfo #[Min(Inclusive="true") 0.0]

        String(Name="GeneralThermalConductivity" Label="Material" Version="0")
          Categories #[Cat TEM3P-Nonlinear-Thermal]
          ChildrenDefinitions
            Double(Name="ConstantThermalConductivity" Label="Thermal Conductivity" Units="W/m*K" Version="0")
              BriefDescription Thermal conductivity
              Categories #[Cat TEM3P-Nonlinear-Thermal]
            File(Name="NonlinearThermalConductivity" Label="Nonlinear Thermal Conductivity (File)"
              NumberOfRequiredValues="1" ShouldExist="true" Version="0")
              BriefDescription File that defines the function for the material nonlinearity
              Categories #[Cat TEM3P-Nonlinear-Thermal]
          DiscreteInfo
            // The values are filenames to be included in the input deck
            Value(Enum="Aluminum 6061") AL6061
            Value(Enum="Aluminum 6063") AL6063
            Value(Enum="AluminumOxide") Al203
            Value(Enum="Copper with RRR10") CURRR10
            Value(Enum="Copper with RRR30") CURRR30
            Value(Enum="Copper with RRR50") CURRR50
            Value(Enum="Copper with RRR100") CURRR100
            Value(Enum="Nb with RRR300") NbRRR300
            Value(Enum="NbTi") NbTi
            Value(Enum="Plastic Peek") Peek
            Value(Enum="Regular Nb") RGNb
            Value(Enum="Silicon Bronze") SiliconBronze
            Value(Enum="Stainless Steel 316") SS316
            Structure
              Value(Enum="Custom - Constant...") CustomConstant
              Items
                Item ConstantThermalConductivity
            Structure
              Value(Enum="Custom - Nonlinear...") CustomNonlinear
              Items
                Item NonlinearThermalConductivity

        Double(Name="ConstantThermalConductivity" Label="Thermal Conductivity" Units="W/m*K" Version="0")
          BriefDescription Thermal conductivity
          Categories #[Cat TEM3P-Linear-Thermal]

= '\n'
