Error with the finer mesh from a Gmsh file #29113
-
Dear MOOSE experts, After MOOSE update, I keep getting an error when I run my models with gmsh file, which did run well without any problem before. While I was testing with a simple model with a squared domain including a circle in the middle, I found out that the model runs with coarse mesh at the boundary of a sideset block. But when I increase the number of nodes at the sideset boundary, it makes an error regarding the mesh. And the similar error appears when I run my models, which worked fine before. Could you help me with the issue? Please find the error, mesh file script and input file below. Many thanks
Gmsh file script (circle.msh)
Input file# Water properties
mu = 1.0E-3
rho = 1000.0
k = 0.598
cp = 4186
# Solid properties
cp_s = 830
rho_s = 1680
k_s = 3.5
# Other parameters
p_outlet = 0
u_inlet = -1e-4
h_conv = 50
[Mesh]
construct_side_list_from_node_list=true
[mesh_file]
type = FileMeshGenerator
file = circle.msh
[]
[sideset]
input = mesh_file
type = SideSetsBetweenSubdomainsGenerator
primary_block = domain
paired_block = 'c'
new_boundary = sideset
[]
[]
[GlobalParams]
rhie_chow_user_object = 'rc'
advected_interp_method = 'upwind'
velocity_interp_method = 'rc'
[]
[UserObjects]
[rc]
type = INSFVRhieChowInterpolator
u = vel_x
v = vel_y
pressure = pressure
block = domain
[]
[]
[Variables]
[vel_x]
type = INSFVVelocityVariable
initial_condition = 1e-4
block = domain
[]
[vel_y]
type = INSFVVelocityVariable
initial_condition = 1e-4
block = domain
[]
[pressure]
type = INSFVPressureVariable
block = domain
[]
[T]
type = INSFVEnergyVariable
initial_condition = 283.15
scaling = 1e-5
block = domain
[]
[Ts]
type = INSFVEnergyVariable
initial_condition = 333.15
scaling = 1e-5
block = 'c'
[]
[]
[FVKernels]
[mass]
type = INSFVMassAdvection
variable = pressure
rho = ${rho}
block = domain
[]
[u_time]
type = INSFVMomentumTimeDerivative
variable = vel_x
rho = ${rho}
momentum_component = 'x'
block = domain
[]
[u_advection]
type = INSFVMomentumAdvection
variable = vel_x
rho = ${rho}
momentum_component = 'x'
block = domain
[]
[u_viscosity]
type = INSFVMomentumDiffusion
variable = vel_x
mu = ${mu}
momentum_component = 'x'
block = domain
[]
[u_pressure]
type = INSFVMomentumPressure
variable = vel_x
momentum_component = 'x'
pressure = pressure
block = domain
[]
[v_time]
type = INSFVMomentumTimeDerivative
variable = vel_y
rho = ${rho}
momentum_component = 'y'
block = domain
[]
[v_advection]
type = INSFVMomentumAdvection
variable = vel_y
rho = ${rho}
momentum_component = 'y'
block = domain
[]
[v_viscosity]
type = INSFVMomentumDiffusion
variable = vel_y
mu = ${mu}
momentum_component = 'y'
[]
[v_pressure]
type = INSFVMomentumPressure
variable = vel_y
momentum_component = 'y'
pressure = pressure
block = domain
[]
[energy_time]
type = INSFVEnergyTimeDerivative
variable = T
rho = ${rho}
dh_dt = dh_dt
block = domain
[]
[temp_conduction]
type = FVDiffusion
coeff = 'k'
variable = T
block = domain
[]
[temp_advection]
type = INSFVEnergyAdvection
variable = T
block = domain
[]
[solid_energy_time]
type = INSFVEnergyTimeDerivative
variable = Ts
rho = ${rho_s}
dh_dt = dh_solid_dt
block = 'c'
[]
[solid_temp_conduction]
type = FVDiffusion
coeff = 'k_s'
variable = Ts
block = 'c'
[]
[]
[FVInterfaceKernels]
[convection]
type = FVConvectionCorrelationInterface
variable1 = T
variable2 = Ts
subdomain1 = domain
subdomain2 = 'c'
boundary = sideset
h = ${h_conv}
T_solid = Ts
T_fluid = T
wall_cell_is_bulk = true
[]
[]
[FVBCs]
[inlet-u]
type = INSFVInletVelocityBC
boundary = 'top'
variable = vel_x
function = 0
[]
[inlet-v]
type = INSFVInletVelocityBC
boundary = 'top'
variable = vel_y
function = ${u_inlet}
[]
[inlet_T]
type = FVDirichletBC
variable = T
boundary = 'top'
value = 283.15
[]
[no-slip-u]
type = INSFVNoSlipWallBC
boundary = 'left right sideset'
variable = vel_x
function = 0
[]
[no-slip-v]
type = INSFVNoSlipWallBC
boundary = 'left right sideset'
variable = vel_y
function = 0
[]
[outlet_p]
type = INSFVOutletPressureBC
boundary = 'bottom'
variable = pressure
function = '${p_outlet}'
[]
[]
[FunctorMaterials]
[functor_constants]
type = ADGenericFunctorMaterial
prop_names = 'cp k'
prop_values = '${cp} ${k}'
block = domain
[]
[ins_fv]
type = INSFVEnthalpyFunctorMaterial
temperature = 'T'
rho = ${rho}
block = domain
[]
[solid_functor_constants]
type = ADGenericFunctorMaterial
prop_names = 'cp_s k_s'
prop_values = '${cp_s} ${k_s}'
block = 'c'
[]
[solid_ins_fv]
type = INSFVEnthalpyFunctorMaterial
temperature = 'Ts'
rho = ${rho_s}
cp = ${cp_s}
block = 'c'
h = h_solid
[]
[]
[Executioner]
type = Transient
solve_type = NEWTON
petsc_options_iname = '-pc_type -ksp_gmres_restart -sub_pc_type -sub_pc_factor_shift_type'
petsc_options_value = 'asm 100 lu NONZERO'
line_search = 'none'
nl_rel_tol = 1e-8
dt = 10
end_time = 10
[]
[Outputs]
exodus = true
[] |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 3 replies
-
Hello When defining the entities, you chose the bounding boxes
and they do not include some of the nodes. I did it quickly here
|
Beta Was this translation helpful? Give feedback.
Hello
When defining the entities, you chose the bounding boxes
and they do not include some of the nodes.
If you want to use these nodes, you need to grow these bounding boxes
I did it quickly here