diff options
Diffstat (limited to 'src/emu/netlist/analog/nld_ms_direct.h')
-rw-r--r-- | src/emu/netlist/analog/nld_ms_direct.h | 44 |
1 files changed, 22 insertions, 22 deletions
diff --git a/src/emu/netlist/analog/nld_ms_direct.h b/src/emu/netlist/analog/nld_ms_direct.h index 1e3f1f28b79..42e29d04b33 100644 --- a/src/emu/netlist/analog/nld_ms_direct.h +++ b/src/emu/netlist/analog/nld_ms_direct.h @@ -14,7 +14,7 @@ class netlist_matrix_solver_direct_t: public netlist_matrix_solver_t public: netlist_matrix_solver_direct_t(const netlist_solver_parameters_t ¶ms, int size); - netlist_matrix_solver_direct_t(const eSolverType type, const netlist_solver_parameters_t ¶ms, int size); + netlist_matrix_solver_direct_t(const eSolverType type, const netlist_solver_parameters_t ¶ms, int size); virtual ~netlist_matrix_solver_direct_t(); @@ -69,13 +69,13 @@ netlist_matrix_solver_direct_t<m_N, _storage_N>::~netlist_matrix_solver_direct_t { //delete[] m_A[k]; } - for (int k = 0; k < N(); k++) - { - nl_free(m_terms[k]); - nl_free(m_row_ops[k]); - } - nl_free(m_row_ops[N()]); - //delete[] m_last_RHS; + for (int k = 0; k < N(); k++) + { + nl_free(m_terms[k]); + nl_free(m_row_ops[k]); + } + nl_free(m_row_ops[N()]); + //delete[] m_last_RHS; //delete[] m_RHS; nl_free_array(m_terms); nl_free_array(m_rails_temp); @@ -193,17 +193,17 @@ ATTR_COLD void netlist_matrix_solver_direct_t<m_N, _storage_N>::vsetup(netlist_a * Sorting as a general matrix pre-conditioning is mentioned in * literature but I have found no articles about Gauss Seidel. * - * For Gaussian Elimination however increasing order is better suited. - * FIXME: Even better would be to sort on elements right of the matrix diagonal. - * + * For Gaussian Elimination however increasing order is better suited. + * FIXME: Even better would be to sort on elements right of the matrix diagonal. + * */ - int sort_order = (type() == GAUSS_SEIDEL ? 1 : -1); + int sort_order = (type() == GAUSS_SEIDEL ? 1 : -1); for (int k = 0; k < N() / 2; k++) for (int i = 0; i < N() - 1; i++) { - if ((m_terms[i]->m_railstart - m_terms[i+1]->m_railstart) * sort_order < 0) + if ((m_terms[i]->m_railstart - m_terms[i+1]->m_railstart) * sort_order < 0) { std::swap(m_terms[i],m_terms[i+1]); m_nets.swap(i, i+1); @@ -475,15 +475,15 @@ netlist_matrix_solver_direct_t<m_N, _storage_N>::netlist_matrix_solver_direct_t( , m_dim(size) , m_lp_fact(0) { - m_terms = nl_alloc_array(terms_t *, N()); - m_rails_temp = nl_alloc_array(terms_t, N()); - - for (int k = 0; k < N(); k++) - { - m_terms[k] = nl_alloc(terms_t); - m_row_ops[k] = vector_ops_t::create_ops(k); - } - m_row_ops[N()] = vector_ops_t::create_ops(N()); + m_terms = nl_alloc_array(terms_t *, N()); + m_rails_temp = nl_alloc_array(terms_t, N()); + + for (int k = 0; k < N(); k++) + { + m_terms[k] = nl_alloc(terms_t); + m_row_ops[k] = vector_ops_t::create_ops(k); + } + m_row_ops[N()] = vector_ops_t::create_ops(N()); } |