logo资料库

对流扩散方程有限体积法.doc

第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
资料共7页,全文预览结束
作业: 已知一流场满足下面的稳态对流扩散方程:   (      ρu x  v y      2  2    2 2 x    y   其中: 5u , 3v , 5.0 。下图中,流场为正方形,边长为 1,且 50AB , BC 100 , CD 300 , AD 200 。用数值解法,计算此流场的分布。 解: 一、离散化: 原式代入数据并变形有: 5    x  3    y   5.0     2  2    2 2 x    y   对上式进行数值求解,取各边步长均相等,并分别设 0.1,0.05,0.04 三种网格,此三种网 ,均大于零小于 2,可以采用中心差分,离散后公式变为: 格的贝克利数: u  x P      x  1j,i  2 1-ji, 5    x  j,1i  2 j,1-i 3   5.0   j,1i       2  j,i 2 x  j,1-i  1j,i    2  j,i 2 x  1-ji,    整理后有:  j,i   25.1-25.0  x   j,1i    75.0-25.0  x   1j,i    25.0  25.1  x   j,1-i   25.0  75.0  x   1-j,i 二、源程序: 根据上式,利用 C++进行编程,主要程序如下: f1[200][200],f2[200][200],x; float int i,j,n,a; printf("%s","输入步长 x:");
scanf("%f",&x); n=1.00/x; for(i=0;i<=n;i++) { j=0; f1[i][j]=50; } for(j=0;j<=n;j++) { i=0; f1[i][j]=200; } for(i=0;i<=n;i++) { j=n; f1[i][j]=300; } for(j=0;j<=n;j++) { i=n; f1[i][j]=100; } for(i=1;i=1e-3) a=1; } } //保证每个节点值的误差都小于 0.001 {f1[i][j]=(0.25-1.25*x)*f1[i][j+1]+(0.25-0.75*x)*f1[i-1][j]+(0.25+1.25*x)*f1[i][j-1]+(0.25+0.75 *x)*f1[i+1][j]; } while(a==1); 三、计算结果 (1)步长为 0.1,则共有 11 行节点。运行结果如下: 第 0 行 200.000 200.000 200.000 200.000 200.000 200.000 200.000 200.000
200.000 第 1 行 50.000 第 2 行 50.000 200.000 86.161 181.214 59.752 119.448 164.660 147.199 第 3 行 50.000 106.592 第 4 行 50.000 102.180 第 5 行 50.000 102.191 第 6 行 50.000 第 7 行 50.000 106.206 第 8 行 50.000 106.948 第 9 行 50.000 104.987 第 10 行 100.000 100.000 53.265 155.860 51.837 152.532 52.017 152.121 53.157 104.119 152.634 55.616 152.209 60.771 148.217 72.262 135.308 100.000 100.000 300.000 103.935 300.000 68.902 300.000 57.693 300.000 54.881 300.000 55.358 300.000 57.828 300.000 62.502 300.000 70.423 300.000 83.016 300.000 100.000 100.000 113.848 120.211 124.991 129.432 135.272 76.449 82.752 88.409 94.314 102.569 62.596 67.679 72.969 79.041 87.995 58.838 63.392 68.425 74.382 83.327 59.628 64.404 69.494 75.305 83.883 63.144 68.502 73.708 79.210 87.039 69.112 74.887 79.867 84.649 91.203 77.730 83.074 87.092 90.575 95.238 88.746 92.103 94.278 95.991 98.287 100.000 100.000 100.000 100.000 100.000 (2)步长为 0.05,则共有 21 行节点。运行结果如下: 第 0 行 200.000 200.000 200.000 第 1 行 50.000 154.431 171.447 第 2 行 50.000 121.712 150.264 200.000 200.000 200.000 101.746 155.962 179.340 70.400 124.177 163.141 58.978 第 3 行 50.000 101.883 98.995 150.603 134.714 54.325 第 4 行 50.000 86.758 83.786 141.278 123.572 52.271 第 5 行 50.000 74.023 76.909 115.877 134.677 51.322 第 6 行 50.000 68.103 70.855 110.841 130.277 50.886 67.500 127.586 第 7 行 50.000 64.856 107.821 200.000 200.000 200.000 124.700 157.343 193.919 86.389 126.446 185.472 68.130 104.622 177.173 59.412 89.676 170.346 55.182 79.837 165.277 53.116 73.728 161.809 52.137 70.312 159.643 200.000 200.000 200.000 136.360 158.678 224.280 97.617 128.673 225.844 76.054 107.374 222.521 64.497 92.685 218.827 58.410 82.937 215.854 55.264 76.833 213.754 53.721 73.390 212.418 200.000 200.000 300.000 143.071 160.081 300.000 105.486 131.040 300.000 82.545 110.348 300.000 69.209 95.999 300.000 61.712 86.416 300.000 57.646 80.371 300.000 55.585 76.931 300.000 200.000 200.000 200.000 200.000 200.000 200.000 147.368 161.705 150.371 163.798 152.626 166.785 111.179 133.802 115.481 137.369 118.886 142.441 87.814 113.855 92.148 118.405 95.806 124.859 73.443 99.959 77.228 105.125 80.643 112.453 64.956 90.623 60.167 84.692 57.673 81.283 68.086 96.149 71.099 103.998 62.767 90.403 59.935 87.061 65.414 98.535 62.336 95.313
第 8 行 50.000 63.470 106.296 第 9 行 50.000 63.411 105.847 第 10 行 50.000 64.343 106.135 第 11 行 50.000 66.065 106.881 第 12 行 50.000 68.460 107.841 第 13 行 50.000 71.458 108.795 第 14 行 50.000 75.004 109.526 第 15 行 50.000 79.024 109.817 第 16 行 50.000 83.404 109.452 第 17 行 50.000 87.964 108.241 第 18 行 50.000 92.453 106.090 第 19 行 50.000 96.566 103.147 第 20 行 100.000 100.000 100.000 51.741 50.713 68.835 66.061 158.470 126.176 51.689 50.688 68.771 66.006 158.004 125.682 51.875 50.767 69.757 66.984 157.997 125.799 52.271 50.934 71.549 68.769 158.221 126.262 52.894 51.203 73.975 71.215 158.455 126.827 53.811 51.606 76.904 74.218 158.461 127.254 55.147 52.211 80.218 77.687 157.950 127.283 57.121 53.147 83.794 81.516 156.521 126.606 60.105 54.668 87.489 85.569 153.569 124.845 64.739 57.321 91.135 89.668 148.120 121.542 72.086 62.401 93.592 94.549 116.226 138.607 73.318 83.641 97.553 97.106 122.856 108.717 100.000 100.000 100.000 100.000 100.000 100.000 54.726 53.086 71.884 75.398 211.676 300.000 53.010 54.636 71.794 75.262 211.359 300.000 53.329 55.100 72.751 76.152 211.310 300.000 53.990 56.038 74.495 77.794 211.382 300.000 57.455 55.012 76.834 79.983 211.425 300.000 59.427 56.476 79.617 82.552 211.265 300.000 62.085 58.530 85.356 82.710 210.673 300.000 65.618 61.405 88.259 85.980 209.285 300.000 70.249 65.441 91.128 89.285 300.000 206.451 71.089 76.191 93.837 92.477 300.000 200.826 78.838 83.506 96.272 95.409 300.000 189.279 88.859 91.832 98.344 97.949 300.000 163.614 100.000 100.000 100.000 100.000 100.000 100.000 (3)步长为 0.04,则共有 26 行节点。运行结果如下: 第 0 行 200.000 200.000 200.000 200.000 第 1 行 50.000 159.983 200.000 200.000 200.000 300.000 105.613 161.367 200.000 200.000 200.000 200.000 200.000 200.000 129.762 162.535 141.846 163.559 200.000 200.000 200.000 148.723 164.493 56.623 79.728 56.531 79.527 57.141 80.311 58.340 81.798 60.111 83.772 62.504 86.055 65.609 88.493 69.541 90.949 74.401 93.300 80.211 95.439 86.808 97.291 93.701 98.812 58.736 85.490 58.653 85.209 59.395 85.850 60.819 87.131 62.878 88.825 65.581 90.742 68.970 92.720 61.027 93.745 60.957 93.376 61.809 93.848 63.410 94.876 65.677 96.226 68.580 97.695 72.107 99.101 73.083 94.613 76.233 100.278 77.919 96.302 80.887 101.083 83.383 97.696 85.912 101.416 89.219 98.754 91.037 101.254 94.968 99.495 95.879 100.699 100.000 100.000 100.000 100.000 100.000 100.000 200.000 200.000 200.000 200.000 200.000 200.000 200.000 200.000 200.000 153.077 165.381 156.073 166.269 158.276 167.207
168.264 231.660 第 2 行 50.000 129.381 143.551 237.778 第 3 行 50.000 106.654 124.525 237.083 第 4 行 50.000 90.253 110.084 234.767 第 5 行 50.000 78.738 99.319 232.369 第 6 行 50.000 70.877 91.487 230.339 第 7 行 50.000 65.684 85.978 228.770 第 8 行 50.000 62.410 82.300 227.637 第 9 行 50.000 60.515 80.057 226.876 第 10 行 50.000 59.621 78.935 226.413 第 11 行 50.000 59.473 78.687 226.176 第 12 行 50.000 59.910 79.117 226.098 第 13 行 50.000 169.536 300.000 73.788 131.661 145.795 300.000 61.393 109.365 127.484 300.000 55.939 93.047 113.551 300.000 53.308 81.408 103.131 300.000 51.955 73.334 95.522 300.000 51.231 67.920 90.145 300.000 50.841 64.466 86.535 300.000 50.636 62.451 84.313 300.000 50.542 61.500 83.176 300.000 50.520 61.354 82.883 300.000 50.550 61.841 83.239 300.000 50.624 171.175 173.417 176.658 181.597 189.584 203.608 91.817 133.618 148.682 72.482 111.752 131.291 62.532 95.583 118.013 57.269 83.912 108.044 54.410 75.716 100.732 52.830 70.156 95.539 51.958 66.574 92.029 51.496 64.470 89.846 51.282 63.476 88.699 51.233 63.332 88.356 51.304 63.858 88.625 104.188 135.357 152.618 81.779 113.917 136.462 112.694 136.960 158.264 89.185 115.946 143.818 68.845 97.943 124.057 74.472 100.200 132.596 61.425 86.307 114.689 57.161 78.057 107.775 54.711 72.410 102.835 53.324 68.742 99.470 52.575 66.575 97.350 52.228 65.550 96.206 52.150 65.406 95.813 52.271 65.956 95.986 65.467 88.652 124.031 60.026 80.402 117.653 56.782 74.713 113.057 54.894 70.995 109.897 53.857 68.786 107.880 53.373 67.736 106.759 53.269 67.587 106.324 53.450 68.147 106.400 118.733 138.499 166.726 95.030 117.921 154.672 79.338 102.434 145.051 69.241 91.015 137.557 62.881 82.810 131.891 58.961 77.118 127.759 56.623 73.376 124.888 55.318 71.141 123.029 54.705 70.072 121.965 54.580 69.911 121.508 54.826 70.464 121.497 123.196 140.047 179.939 99.693 119.928 171.167 83.512 104.737 163.646 72.699 93.488 157.537 65.657 85.366 152.801 61.192 79.704 149.292 58.471 75.962 146.820 56.930 73.714 145.197 56.204 72.627 144.244 56.066 72.445 143.801 56.378 72.974 143.725 126.633 141.692 201.432 103.489 122.080 196.791 87.110 107.230 191.818 75.852 96.195 187.419 68.323 88.196 183.873 63.439 82.594 181.190 60.407 78.873 179.275 58.669 76.622 178.001 57.850 75.518 177.236 57.704 75.307 176.859 58.082 75.796 176.757 51.476 52.562 53.872 55.384 57.070 58.897
第 14 行 50.000 62.192 81.422 226.165 第 15 行 50.000 63.966 83.069 226.182 62.852 60.833 80.071 84.089 226.115 300.000 50.742 64.322 85.304 300.000 50.911 66.216 86.777 300.000 51.145 68.517 88.414 300.000 51.469 71.214 90.132 300.000 51.922 74.295 91.856 300.000 52.577 77.730 93.518 300.000 53.559 81.465 95.060 300.000 55.117 85.407 96.436 300.000 第 22 行 50.000 57.782 87.844 89.421 96.355 97.618 211.582 300.000 62.819 93.326 98.595 300.000 73.582 96.919 99.380 300.000 第 20 行 50.000 79.202 92.901 221.899 第 21 行 50.000 83.425 94.715 218.241 第 24 行 50.000 96.401 99.006 170.174 第 16 行 50.000 66.155 84.923 226.090 第 17 行 50.000 68.771 86.903 225.794 第 18 行 50.000 71.823 88.937 225.160 第 19 行 50.000 75.310 90.957 223.980 第 23 行 50.000 92.256 97.791 198.544 64.934 89.351 51.749 66.482 90.402 52.137 68.453 91.667 52.668 70.813 93.047 53.392 73.534 94.454 54.389 76.583 95.805 55.786 79.911 97.030 57.796 83.449 98.069 60.775 87.099 98.878 65.337 90.733 99.442 72.517 94.198 99.777 83.812 97.335 99.937 67.073 96.571 69.280 106.836 71.588 121.787 74.066 143.887 76.830 176.825 53.018 68.666 97.435 53.658 70.673 98.462 54.522 73.046 99.547 55.678 75.740 100.591 57.228 78.707 101.501 59.324 81.889 102.192 62.191 85.207 102.590 66.150 88.564 102.642 71.638 91.846 102.330 79.148 94.925 101.697 88.918 97.678 100.858 54.526 70.886 107.499 55.432 72.890 108.268 56.636 75.233 109.029 58.210 77.857 109.670 60.258 80.705 110.079 62.925 83.710 110.139 66.393 86.793 109.739 70.884 89.861 108.780 76.613 92.815 107.206 83.677 95.550 105.053 91.809 97.970 102.517 56.239 73.175 122.248 57.406 75.141 122.757 58.928 77.415 123.192 60.870 79.933 123.424 63.324 82.628 123.310 66.402 85.432 122.686 70.225 88.266 121.364 74.905 91.047 119.136 80.487 93.689 115.803 86.859 96.108 111.271 93.622 98.229 105.739 58.116 75.604 144.166 59.521 77.497 144.443 61.319 79.667 144.592 63.562 82.042 144.470 66.315 84.554 143.905 69.650 87.131 142.671 73.627 89.700 140.468 78.269 92.188 136.884 83.516 94.521 131.379 89.172 96.634 123.356 94.851 98.472 112.523 60.113 78.290 176.963 61.723 80.076 177.069 63.745 82.106 177.026 66.211 84.304 176.698 69.160 86.597 175.903 72.622 88.916 174.377 76.606 91.195 171.718 81.075 93.368 167.269 85.915 95.377 159.921 90.910 97.173 147.826 95.736 98.721 128.313
第 25 行 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 四、数据分析: 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 100.000 通过对比可知,步长为 0.1 的数据组,相对于其他两组,数据明显误差较大,此处不 详细分析。同时步长为 0.05 和 0.04 的两组数据变化情况也更符合实际,更合理。 我们将步长为 0.05 和 0.04 的两组数据,取同一节点处的数值结果(数据中标黄色的 数据),进行误差分析,来判断精确度。 第 4 行 69.209 第 8 行 54.726 第 12 行 57.455 第 16 行 70.249 步长 0.05 83.786 63.470 68.460 83.404 95.999 75.398 79.983 91.128 123.572 第 5 行 69.241 106.296 第 10 行 54.705 107.841 第 15 行 57.406 109.452 第 20 行 70.225 步长 0.04 83.912 63.476 68.453 83.449 96.195 75.578 80.276 91.195 124.031 106.759 108.268 109.739 计算可知,两次数据相差很小,均小于 0.5,精度都在 0.5%以下,所以可以认为数据 基本稳定,计算结果准确。
分享到:
收藏