From a7987d37809768b80c5267f7e37cf996a0e3038c Mon Sep 17 00:00:00 2001 From: Josh Williams Date: Thu, 15 Aug 2024 13:00:58 +0100 Subject: [PATCH] Change target material to steel 316L --- input/AForm.i | 16 ++-- input/Parameters.i | 28 ++++--- input/THeat.i | 78 ++++++++++++++++--- input/VLaplace.i | 2 +- ..._316L_coefficient_of_thermal_expansion.csv | 22 ++++++ matprops/steel_316L_density.csv | 22 ++++++ .../steel_316L_electrical_resistivity.csv | 22 ++++++ .../steel_316L_specific_heat_capacity.csv | 22 ++++++ matprops/steel_316L_thermal_conductivity.csv | 22 ++++++ matprops/water_htc.csv | 7 ++ 10 files changed, 210 insertions(+), 31 deletions(-) create mode 100644 matprops/steel_316L_coefficient_of_thermal_expansion.csv create mode 100644 matprops/steel_316L_density.csv create mode 100644 matprops/steel_316L_electrical_resistivity.csv create mode 100644 matprops/steel_316L_specific_heat_capacity.csv create mode 100644 matprops/steel_316L_thermal_conductivity.csv create mode 100644 matprops/water_htc.csv diff --git a/input/AForm.i b/input/AForm.i index 2c38edc..fd632f7 100644 --- a/input/AForm.i +++ b/input/AForm.i @@ -2,7 +2,7 @@ [Mesh] type = FileMesh - file = ../mesh/vac_oval_coil_solid_target_coarse.e + file = ../mesh/vac_oval_coil_solid_target.e second_order = true [] @@ -28,7 +28,7 @@ [curlcurlA_coil_target] type = CurlCurlField variable = A - coeff = ${copper_reluctivity} + coeff = ${apollo_reluctivity} block = 'coil target' [] [curlcurlA_vacuum] @@ -40,7 +40,7 @@ [dAdt_target] type = CoefVectorTimeDerivative variable = A - coeff = ${copper_econductivity} + coeff = ${steel_econductivity} block = target [] [dAdt_coil_vacuum] @@ -53,7 +53,7 @@ type = CoupledGrad variable = A coupled_scalar_variable = V - function = ${copper_econductivity}*${voltage_amplitude}*sin(${voltage_wfrequency}*t) + function = ${steel_econductivity}*${voltage_amplitude}*sin(${voltage_wfrequency}*t) block = coil [] [] @@ -64,7 +64,7 @@ variable = P power_prev = P vector_potential = A - sigma = ${copper_econductivity} + sigma = ${steel_econductivity} block = target execute_on = timestep_end [] @@ -74,7 +74,7 @@ [plane] type = VectorCurlPenaltyDirichletBC variable = A - boundary = 'coil_in coil_out terminal_plane' + boundary = 'coil_in coil_out' penalty = 1e14 [] [] @@ -91,9 +91,13 @@ solve_type = LINEAR petsc_options_iname = -pc_type petsc_options_value = lu + start_time = 0.0 end_time = ${end_t} dt = ${delta_t} + nl_abs_tol = 1e-6 + nl_rel_tol = 1e-8 + l_tol = 1e-6 [] [MultiApps] diff --git a/input/Parameters.i b/input/Parameters.i index b71371d..4e80d08 100644 --- a/input/Parameters.i +++ b/input/Parameters.i @@ -5,21 +5,25 @@ vacuum_tconductivity = 0 # W/(m*K) vacuum_density = 0 # kg/m^3 vacuum_capacity = 0 # J/(kg*K) -copper_permeability = ${fparse 0.999994*vacuum_permeability} # H/m -copper_reluctivity = ${fparse 1/copper_permeability} # (H/m)^-1 -copper_econductivity = 5.96e7 # S/m -copper_tconductivity = 398 # W/(m*K) -copper_density = 8.96e3 # kg/m^3 -copper_capacity = 385 # J/(kg*K) +steel_econductivity = 1e6 # S/m +apollo_permeability = ${fparse vacuum_permeability} # H/m +apollo_reluctivity = ${fparse 1/apollo_permeability} # (H/m)^-1 -room_temperature = 293.15 # K +room_temperature = 300.0 # K -voltage_amplitude = 1 # V +coil_length = 0.4202366016924178 # m (from paraview) +coil_area = 2.3753e-05 # m^2 (from paraview) +coil_resistance = ${fparse 1/steel_econductivity * coil_length / coil_area} # Ohm +coil_current = 1828 # A, taken from Apollo input file +voltage_amplitude = ${fparse coil_current*coil_resistance} # V voltage_frequency = 1e5 # Hz voltage_wfrequency = ${fparse 2*pi*voltage_frequency} # rad/s voltage_period = ${fparse 1/voltage_frequency} # s -end_t = ${fparse voltage_period} # s -delta_t = ${fparse voltage_period/10} # s -end_t_temp = ${fparse voltage_period*10} # s -delta_t_temp = ${fparse voltage_period} # s +coolant_bulk_temp = 300.0 # K + +num_voltage_periods = 4 +end_t = ${fparse voltage_period*num_voltage_periods} # s +delta_t = ${fparse voltage_period/40} # s +end_t_temp = 60 # s +delta_t_temp = 5 # s diff --git a/input/THeat.i b/input/THeat.i index 28c9ab0..6d6c71e 100644 --- a/input/THeat.i +++ b/input/THeat.i @@ -2,14 +2,14 @@ [Mesh] type = FileMesh - file = ../mesh/vac_oval_coil_solid_target_coarse.e + file = ../mesh/vac_oval_coil_solid_target.e second_order = true [] [Variables] [T] family = LAGRANGE - order = FIRST + order = SECOND initial_condition = ${room_temperature} [] [] @@ -37,17 +37,61 @@ [] [] +[Functions] + [ss316l-sh-func] + type = PiecewiseLinear + data_file = ../matprops/steel_316L_specific_heat_capacity.csv + format = columns + [] + [ss316l-tc-func] + type = PiecewiseLinear + data_file = ../matprops/steel_316L_thermal_conductivity.csv + format = columns + [] + [ss316l-density-func] + type = PiecewiseLinear + data_file = ../matprops/steel_316L_density.csv + format = columns + [] + [water-htc-func] + type = PiecewiseLinear + data_file = ../matprops/water_htc.csv + format = columns + [] +[] + [Materials] - [copper] - type = GenericConstantMaterial - prop_names = 'thermal_conductivity specific_heat density' - prop_values = '${copper_tconductivity} ${copper_capacity} ${copper_density}' - block = 'coil target' + [ss316l-density] + type = CoupledValueFunctionMaterial + v = T + prop_name = density + function = ss316l-density-func + block = "coil target" + [] + [ss316l-thermal] + type = HeatConductionMaterial + temp = T + specific_heat_temperature_function = ss316l-sh-func + thermal_conductivity_temperature_function = ss316l-tc-func + block = "coil target" + [] + [vacuum-thermal] + type = HeatConductionMaterial + temp = T + specific_heat = ${vacuum_capacity} + thermal_conductivity = ${vacuum_tconductivity} + block = "vacuum_region" + [] + [coolant_heat_transfer_coefficient] + type = CoupledValueFunctionMaterial + v = T + prop_name = heat_transfer_coefficient + function = water-htc-func [] [vacuum] type = GenericConstantMaterial - prop_names = 'thermal_conductivity specific_heat density' - prop_values = '${vacuum_tconductivity} ${vacuum_capacity} ${vacuum_density}' + prop_names = 'density' + prop_values = '${vacuum_density}' block = vacuum_region [] [] @@ -56,19 +100,28 @@ [plane] type = DirichletBC variable = T - boundary = 'coil_in coil_out terminal_plane' + boundary = 'coil_in coil_out' value = ${room_temperature} [] + [heat_flux_out] + type = ConvectiveHeatFluxBC + variable = T + boundary = 'inner_pipe' + T_infinity = ${coolant_bulk_temp} + heat_transfer_coefficient = heat_transfer_coefficient + [] [] [Executioner] type = Transient - solve_type = LINEAR petsc_options_iname = -pc_type petsc_options_value = hypre start_time = 0.0 end_time = ${end_t_temp} dt = ${delta_t_temp} + nl_abs_tol = 1e-6 + nl_rel_tol = 1e-8 + l_tol = 1e-8 [] [Postprocessors] @@ -80,6 +133,7 @@ [Outputs] exodus = true + print_linear_residuals=false csv = true [] @@ -87,7 +141,7 @@ [AForm] type = FullSolveMultiApp input_files = AForm.i - execute_on = timestep_begin + execute_on = initial [] [] diff --git a/input/VLaplace.i b/input/VLaplace.i index 7abd8d4..1a1480a 100644 --- a/input/VLaplace.i +++ b/input/VLaplace.i @@ -1,6 +1,6 @@ [Mesh] type = FileMesh - file = ../mesh/vac_oval_coil_solid_target_coarse.e + file = ../mesh/vac_oval_coil_solid_target.e second_order = true [] diff --git a/matprops/steel_316L_coefficient_of_thermal_expansion.csv b/matprops/steel_316L_coefficient_of_thermal_expansion.csv new file mode 100644 index 0000000..548e4ac --- /dev/null +++ b/matprops/steel_316L_coefficient_of_thermal_expansion.csv @@ -0,0 +1,22 @@ +# Temperature (K), Coefficient of Thermal Expansion +293.15,1.533441992e-05 +323.15,1.566568625e-05 +373.15,1.6166489999999998e-05 +423.15,1.6608028749999998e-05 +473.15,1.699592e-05 +523.15,1.7335781249999998e-05 +573.15,1.7633229999999998e-05 +623.15,1.789388375e-05 +673.15,1.8123359999999997e-05 +723.15,1.832727625e-05 +773.15,1.851125e-05 +823.15,1.868089875e-05 +873.15,1.8841839999999996e-05 +923.15,1.8999691249999998e-05 +973.15,1.9160069999999998e-05 +1023.15,1.9328593749999998e-05 +1073.15,1.951088e-05 +1123.15,1.971254625e-05 +1173.15,1.9939209999999998e-05 +1223.15,2.019648875e-05 +1273.15,2.049e-05 diff --git a/matprops/steel_316L_density.csv b/matprops/steel_316L_density.csv new file mode 100644 index 0000000..a864153 --- /dev/null +++ b/matprops/steel_316L_density.csv @@ -0,0 +1,22 @@ +# Temperature (K), Density (kg.m^-3) +293.15,7930.0 +323.15,7918.819399723375 +373.15,7899.2319362319995 +423.15,7878.636349484875 +473.15,7857.220071376 +523.15,7835.143805734376 +573.15,7812.541528324 +623.15,7789.520486843875 +673.15,7766.161200928 +723.15,7742.517462145374 +773.15,7718.616334 +823.15,7694.458151930875 +873.15,7670.016523312001 +923.15,7645.2383274523745 +973.15,7620.043715596 +1023.15,7594.326110921875 +1073.15,7567.952208543999 +1123.15,7540.761975511375 +1173.15,7512.568650808 +1223.15,7483.158745352875 +1273.15,7452.292042 diff --git a/matprops/steel_316L_electrical_resistivity.csv b/matprops/steel_316L_electrical_resistivity.csv new file mode 100644 index 0000000..c50f594 --- /dev/null +++ b/matprops/steel_316L_electrical_resistivity.csv @@ -0,0 +1,22 @@ +# Temperature (K), Electrical Resistivity (Ω m) +293.15,7.762455639999999e-07 +323.15,7.97172775e-07 +373.15,8.311271000000001e-07 +423.15,8.63925975e-07 +473.15,8.955694000000001e-07 +523.15,9.260573750000001e-07 +573.15,9.553899e-07 +623.15,9.83566975e-07 +673.15,1.0105886e-06 +723.15,1.0364547750000001e-06 +773.15,1.0611655000000001e-06 +823.15,1.084720775e-06 +873.15,1.1071206e-06 +923.15,1.128364975e-06 +973.15,1.1484539000000002e-06 +1023.15,1.167387375e-06 +1073.15,1.1851654e-06 +1123.15,1.201787975e-06 +1173.15,1.2172551000000002e-06 +1223.15,1.2315667749999999e-06 +1273.15,1.2447230000000001e-06 diff --git a/matprops/steel_316L_specific_heat_capacity.csv b/matprops/steel_316L_specific_heat_capacity.csv new file mode 100644 index 0000000..2ca816e --- /dev/null +++ b/matprops/steel_316L_specific_heat_capacity.csv @@ -0,0 +1,22 @@ +# Temperature (K), Specific Heat Capacity (J.kg^-1.K^-1) +293.15,472.4370950719999 +323.15,484.83075125 +373.15,500.74521999999996 +423.15,512.46370125 +473.15,521.6871199999999 +523.15,529.78703125 +573.15,537.80562 +623.15,546.45570125 +673.15,556.12072 +723.15,566.85475125 +773.15,578.3824999999999 +823.15,590.0993012499999 +873.15,601.0711200000001 +923.15,610.0345512499998 +973.15,615.3968199999999 +1023.15,615.2357812500002 +1073.15,607.29992 +1123.15,589.0083512500003 +1173.15,557.45082 +1223.15,509.38770124999974 +1273.15,441.25000000000045 diff --git a/matprops/steel_316L_thermal_conductivity.csv b/matprops/steel_316L_thermal_conductivity.csv new file mode 100644 index 0000000..20065fd --- /dev/null +++ b/matprops/steel_316L_thermal_conductivity.csv @@ -0,0 +1,22 @@ +# Temperature (K), Thermal Conductivity (W.m^-1.K^-1) +293.15,14.279399999999999 +323.15,14.729999999999999 +373.15,15.481 +423.15,16.232 +473.15,16.983 +523.15,17.733999999999998 +573.15,18.485 +623.15,19.236 +673.15,19.987 +723.15,20.738 +773.15,21.488999999999997 +823.15,22.240000000000002 +873.15,22.991 +923.15,23.741999999999997 +973.15,24.493000000000002 +1023.15,25.244 +1073.15,25.994999999999997 +1123.15,26.746 +1173.15,27.497 +1223.15,28.247999999999998 +1273.15,28.999 diff --git a/matprops/water_htc.csv b/matprops/water_htc.csv new file mode 100644 index 0000000..37c9b8d --- /dev/null +++ b/matprops/water_htc.csv @@ -0,0 +1,7 @@ +# Temperature (K), HTC (W.m^-2.K^-1) +274.15,4.0 +373.15,109100.0 +423.15,115900.0 +473.15,121010.0 +523.15,128800.0 +568.15,208200.0