Red de conocimiento informático - Computadora portátil - Programación de simulación de campo de temperatura C++ (recompensa 200, esperando en línea)

Programación de simulación de campo de temperatura C++ (recompensa 200, esperando en línea)

En realidad, este problema es muy simple. Para la ecuación de chi-cuadrado, las condiciones de contorno todavía están en los nodos.

El siguiente algoritmo no debería tener problemas. Simplemente está escrito específicamente para su problema. L + 1 es el número de nodos Uso El número de nodos en las direcciones xey es el mismo que la división, pero no se juzga la precisión. Lo más importante es que publiqué el programa tan pronto como vi su. pregunta La condición de contorno utilizada aquí es la mejor w en el área cuadrada Valor teórico

#include <stdio.h>

#include

#define PI 3.1415926

# define L 10 // L+1 es el número de nodos

#define Hx (1.0/L)

#define Hy (0,5/L)

int main (int argc, char* argv[])

{// T[i][j], i:x, j:y

int i, j, k;

doble w = 2/(1+sin(PI/L));

doble T[ L+1][L+1];

para (i=0; i<=L; i++)

T[0][i] = T[i][ 0] = 100;

for(i=1; i<=L; i++)

T[i][L] = 100 + 400*Hx*i; p>

for(j=1; j<=L-1; j++)

T[L][j] = 100 + 800*Hy*j

for(j=1; j<=L-1;j++)

for(i=1; i<=L-1; i++)

T[i][j ] = 100;

para(k=0; k <=1000; k++)

{

para(i=1; i<=L- 1; i++)

for(j=1; j< ;=L-1; j++)

for(j=1; j<=L-1; j++)

{

T[i][j] = T[i][j] + (w/4)*(T[i+1][j] + T[i] [j+1] + T[i-1][j] + T[ i][j-1] - 4*T[i][j]); p>}

}

}

printf("Método de iteración ultra relajado, w = %lf \n", w

);

printf("T[x][y] = ...\ n");

for(i=0; i<=L; i++)

for (j=0; j<=L; j++)

{

printf("%.1lf\t", T[i][j]);

if(j == L)

putchar (10);

}

devuelve 0

}