fork download
  1. //
  2. // eqheat.c: Solution of heat equation using with finite differences
  3. //
  4.  
  5. #include <stdlib.h>
  6. #include <stdio.h>
  7. #define size 5000000 // grid size
  8. #define maxiter 300000 // iterations
  9. #define thc 0.12 // thermal conductivity
  10. #define sph 0.113 // specific heat
  11. #define rho 7.8 // density
  12.  
  13. main() {
  14.  
  15. int i, j, k;
  16. double cons, u[size + 1][2];
  17.  
  18. FILE *output; // save data in eqheat.dat
  19. output = fopen("eqheat.datc", "w");
  20. // t = 0 points are 100C
  21. for (i = 0; i<size; i++) u[i][0] = 100.;
  22. // except the endpoints
  23. for (j = 0; j<2; j++) {
  24. u[0][j] = 0.;
  25. u[size][j] = 0.;
  26. }
  27.  
  28. cons = thc / (sph*rho); // material constants
  29. // loop over maxiter timesteps
  30.  
  31. for (k = 1; k <= maxiter; k++)
  32. {
  33. for (j = 1; j<size; j++) // loop over space
  34.  
  35. {
  36. u[j][1] = u[j][0] + cons*(u[j + 1][0] + u[j - 1][0] - 2.0*u[j][0]);
  37. }
  38.  
  39. // save every 1000 steps
  40. if ((k % 1000 == 0) || (k == 1))
  41. {
  42. for (j = 0; j <= size; j++)
  43. {
  44. if (j % 10 == 0) fprintf(output, "%f\n", u[j][1]);
  45. }
  46. fprintf(output, "\n"); // empty line for gnuplot
  47. }
  48.  
  49. for (j = 0; j<size; j++) u[j][0] = u[j][1]; // new to old
  50. }
  51. printf("data stored in eqheat.datc\n");
  52.  
  53. fclose(output);
  54. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
Main.java:5: error: illegal character: '#'
#include <stdlib.h> 
^
Main.java:5: error: class, interface, or enum expected
#include <stdlib.h> 
         ^
Main.java:6: error: illegal character: '#'
#include <stdio.h>
^
Main.java:7: error: illegal character: '#'
#define size 5000000                          // grid size
^
Main.java:8: error: illegal character: '#'
#define maxiter 300000                      // iterations
^
Main.java:9: error: illegal character: '#'
#define thc 0.12                            // thermal conductivity
^
Main.java:10: error: illegal character: '#'
#define sph 0.113                           // specific heat
^
Main.java:11: error: illegal character: '#'
#define rho 7.8                             // density
^
Main.java:16: error: class, interface, or enum expected
	double cons, u[size + 1][2];
	^
Main.java:18: error: class, interface, or enum expected
	FILE *output;                            // save data in eqheat.dat 
	^
Main.java:19: error: class, interface, or enum expected
	output = fopen("eqheat.datc", "w");
	^
Main.java:21: error: class, interface, or enum expected
	for (i = 0; i<size; i++) u[i][0] = 100.;
	^
Main.java:21: error: class, interface, or enum expected
	for (i = 0; i<size; i++) u[i][0] = 100.;
	            ^
Main.java:21: error: class, interface, or enum expected
	for (i = 0; i<size; i++) u[i][0] = 100.;
	                    ^
Main.java:23: error: class, interface, or enum expected
	for (j = 0; j<2; j++) {
	^
Main.java:23: error: class, interface, or enum expected
	for (j = 0; j<2; j++) {
	            ^
Main.java:23: error: class, interface, or enum expected
	for (j = 0; j<2; j++) {
	                 ^
Main.java:25: error: class, interface, or enum expected
		u[size][j] = 0.;
		^
Main.java:26: error: class, interface, or enum expected
	}
	^
Main.java:31: error: class, interface, or enum expected
	for (k = 1; k <= maxiter; k++)
	^
Main.java:31: error: class, interface, or enum expected
	for (k = 1; k <= maxiter; k++)
	            ^
Main.java:31: error: class, interface, or enum expected
	for (k = 1; k <= maxiter; k++)
	                          ^
Main.java:33: error: class, interface, or enum expected
		for (j = 1; j<size; j++)               // loop over space
		            ^
Main.java:33: error: class, interface, or enum expected
		for (j = 1; j<size; j++)               // loop over space
		                    ^
Main.java:37: error: class, interface, or enum expected
		}
		^
Main.java:42: error: class, interface, or enum expected
			for (j = 0; j <= size; j++)
			            ^
Main.java:42: error: class, interface, or enum expected
			for (j = 0; j <= size; j++)
			                       ^
Main.java:45: error: class, interface, or enum expected
			}
			^
Main.java:47: error: class, interface, or enum expected
		}
		^
Main.java:49: error: class, interface, or enum expected
		for (j = 0; j<size; j++) u[j][0] = u[j][1];       // new to old
		            ^
Main.java:49: error: class, interface, or enum expected
		for (j = 0; j<size; j++) u[j][0] = u[j][1];       // new to old
		                    ^
Main.java:50: error: class, interface, or enum expected
	}
	^
Main.java:53: error: class, interface, or enum expected
	fclose(output);
	^
Main.java:54: error: class, interface, or enum expected
}
^
34 errors
stdout
Standard output is empty