Domanda

Ho un sistema di 22 equazioni lineari (esattamente 22 equazioni e 22 incognite) che sono generati dinamicamente in un foglio di calcolo Excel. C'è un modo per avere Excel risolvere il sistema e produrre un valore per ciascuna delle variabili sconosciute?

Un'altra domanda SO ha un sacco di buone informazioni sugli algoritmi utilizzati per risolvere tali equazioni . di Cramer regola in particolare sembra essere molto promettente, ma non sono sicuro come implementarlo in Excel.

Ogni aiuto è apprezzato!

È stato utile?

Soluzione

Questa pagina ha pronunciato la seguente metodo semplice :

  
      
  1. Inserire la matrice dei coefficienti in un nxn   gamma.

  2.   
  3. Inserire nel vettore di   costanti in una colonna n-alto. Seleziona un   colonna vuota n-alto. È importante   che non si dispone di una sola cella   selezionato.

  4.   
  5. Tipo,   = MMULT (MATR.INVERSA (coefficients_matrix_range),   constants_vector_range) nella formula   casella di testo e premere   [CTRL] [SHIFT] [ENTER]. È importante   che non semplicemente premere [Invio].

  6.   

Questo dovrebbe funzionare in modo adeguato, dal momento che hai solo un piccolo sistema (22x22). Mentre, idealmente, si dovrebbe non invertire direttamente la matrice, non dovrebbe avere importanza in questo caso.

È sicuramente non si desidera la regola di Cramer. Grazie alle sue abbastanza scarse proprietà numeriche, è più teorica che di interesse pratico.

Altri suggerimenti

Risolutore Fondazione di Microsoft ? Mi sembra di ricordare c'è qualche esempio per un insieme ridotto di equazioni simultanee nella documentazione fornita con la versione Express.

Non si dovrebbe mai prendere in considerazione la regola di Cramer per risolvere un sistema lineare! E 'così inefficiente che è impossibile svolgere anche per piccoli impianti.

Excel non è lo strumento giusto per risolvere un sistema lineare. Se fossi in te avrei scritto un semplice script Python che legge il file excel, risolvere l'equazione (con NumPy) e salvare il risultato in un file che Excel può leggere. (Meglio ancora, evitare di Excel del tutto, se potete).

La funzione di Excel REGR.LIN dovrebbe farlo - e tornerà risultati migliori rispetto MATR.PRODOTTO (MATR.INVERSA (...) ...) in molti casi

.

Si potrebbe anche trovare le LOGEST, funzioni di crescita e di tendenza utile.

In caso di problemi con la matrice inversa calc, per esempio sopra / sotto flusso / troncamento ecc, si può sempre utilizzare il Risolutore -. altro ottenere una copia di ricette numeriche in C e tradurre in VBA

che può essere risolutore di equazioni lineari possiamo fare con risolutore matematica utilizzando equazione matematica di radice si trova tra due più il numero di parte esponente del risolutore ma trovare il modo migliore di risolutore di equazioni lineari.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top