@@ -139,12 +139,9 @@ function init_solver(solver_options::Dict{Any,Any},
139139 for block in eachindex (block_nodes)
140140 intersect! (block_nodes[block], pd_nodes)
141141 end
142- if solver_options[" Model Reduction" ]!= false
143- perm = collect (1 : (length (master_nodes) * Data_Manager. get_dof ()))
144- else
145- perm = create_permutation (Data_Manager. get_nnodes (), Data_Manager. get_dof ())
146- end
142+
147143 if ! (master_nodes== [])
144+ perm = collect (1 : (length (master_nodes) * Data_Manager. get_dof ()))
148145 perm_master = create_permutation (master_nodes, Data_Manager. get_dof ())
149146 perm_slave = create_permutation (slave_nodes, Data_Manager. get_dof ())
150147 perm_pd_nodes = create_permutation (pd_nodes, Data_Manager. get_dof ())
@@ -179,7 +176,8 @@ function init_solver(solver_options::Dict{Any,Any},
179176 # end
180177 # end
181178 # end
182- Data_Manager. set_stiffness_matrix (K)
179+ perm = create_permutation (Data_Manager. get_nnodes (), Data_Manager. get_dof ())
180+ Data_Manager. set_stiffness_matrix (K[perm, perm])
183181 return
184182
185183 # reduced matrix
@@ -227,7 +225,7 @@ function run_solver(solver_options::Dict{Any,Any},
227225 M_fact = Data_Manager. get_mass_matrix ()
228226 temp = zeros (length (master_nodes)* Data_Manager. get_dof ())
229227 else
230- temp= zeros (0 )
228+ temp= zeros (Data_Manager . get_dof () * Data_Manager . get_nnodes () )
231229 end
232230 K:: AbstractMatrix{Float64} = Data_Manager. get_stiffness_matrix ()
233231
0 commit comments