{"id":2625,"date":"2025-03-10T05:01:39","date_gmt":"2025-03-10T05:01:39","guid":{"rendered":"https:\/\/ccitonline.com\/wp\/?p=2625"},"modified":"2025-03-10T05:01:39","modified_gmt":"2025-03-10T05:01:39","slug":"analisis-curve-fitting-dan-simulasi-heat-map-melalui-aplikasi-cfdsof-benedio-panjaitan-2306263576","status":"publish","type":"post","link":"https:\/\/ccitonline.com\/wp\/2025\/03\/10\/analisis-curve-fitting-dan-simulasi-heat-map-melalui-aplikasi-cfdsof-benedio-panjaitan-2306263576\/","title":{"rendered":"Analisis Curve Fitting dan Simulasi Heat Map Melalui Aplikasi CFDSOF &#8211; Benedio Panjaitan (2306263576)"},"content":{"rendered":"\n<p>Selamat pagi semuanya perkenalkan kembali Benedio Panjaitan satu satunya (the one and only) pada pagi hari ini kita harus selalu mulai dengan mengucap syukur atas rahmat Tuhan yang diberikan sehingga saya diberikan kesempatan untuk memaparkan materi pada hari ini.<\/p>\n\n\n\n<p>Yak kita mulai saja, pada kesempatan kali ini saya akan membuat curve fitting dan heat map menggunakan hasil data yang saya dapatkan pada saat simulasi menggunakan aplikasi CFDSOF, base data yang saya pakai adalah data dari simulasi sebelumnya namun untuk pengambilan data kali ini ada sedikit perubahan pada permintaan data. berikut data yang saya peroleh:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"411\" src=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-343-1024x411.png\" alt=\"\" class=\"wp-image-2635\" srcset=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-343-1024x411.png 1024w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-343-300x120.png 300w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-343-768x308.png 768w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-343-600x241.png 600w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-343.png 1136w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Ini adalah data yang saya dapatkan melalui simulasi aplikasi CFDSOF, lalu berdasarkan data ini saya promt ke AI untuk mengenerate code phyton untuk membuat curve fitting, dan berikut adalah code yang saya dapatkan:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import numpy as np\nimport matplotlib.pyplot as plt\nfrom scipy.optimize import curve_fit\n\ndef poly3(x, a, b, c, d):\n    return a*x**3 + b*x**2 + c*x + d\n\n# Data posisi (X) dan temperatur (Y) untuk setiap kolom dari J2 sampai J10\nx_data = np.array(&#91;0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0])\ny_data_sets = &#91;\n    &#91;303, 338, 351, 357, 360, 361, 360, 357, 351, 338, 303],\n    &#91;303, 324, 337, 345, 349, 350, 349, 345, 337, 324, 303],\n    &#91;303, 317, 329, 336, 340, 342, 340, 336, 329, 317, 303],\n    &#91;303, 314, 324, 328, 330, 335, 335, 336, 329, 314, 303],\n    &#91;303, 313, 321, 328, 332, 336, 332, 332, 324, 313, 303],\n    &#91;303, 313, 321, 328, 331, 333, 332, 331, 319, 313, 303],\n    &#91;303, 315, 324, 330, 333, 335, 333, 331, 315, 303, 303],\n    &#91;303, 319, 329, 335, 339, 339, 335, 324, 303, 303, 303],\n    &#91;303, 328, 338, 343, 345, 345, 345, 335, 319, 303, 303]\n]\n\nfig, axes = plt.subplots(3, 3, figsize=(12, 10))\naxes = axes.ravel()\n\nfor i in range(9):\n    params, _ = curve_fit(poly3, x_data, y_data_sets&#91;i])\n    x_fit = np.linspace(0, 1, 100)\n    y_fit = poly3(x_fit, *params)\n\n    axes&#91;i].scatter(x_data, y_data_sets&#91;i], color='red', label='Data Temperatur')\n    axes&#91;i].plot(x_fit, y_fit, color='blue', label='Curve Fitting')\n    axes&#91;i].set_title(f'Curve Fitting Posisi J{i+2}')\n    axes&#91;i].set_xlabel('Panjang (x)')\n    axes&#91;i].set_ylabel('Temperatur (K)')\n    axes&#91;i].legend()\n    axes&#91;i].grid(True)\n\nplt.tight_layout()\nplt.show()<\/code><\/pre>\n\n\n\n<p>Dan melalui code phyton tersebut saya mendapatkan curve fitting berupa:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"660\" src=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-346-1024x660.png\" alt=\"\" class=\"wp-image-2641\" srcset=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-346-1024x660.png 1024w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-346-300x193.png 300w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-346-768x495.png 768w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-346-1536x991.png 1536w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-346-600x387.png 600w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-346.png 1707w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Langkah selanjutnya adalah menghitung daya, namun sebelum itu kita harus mengubah persamaan temperature tersebut menjadi persamaan flux panas: <strong>A. Curve Fitting Temperatur<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Data temperatur<\/strong> diberikan dalam bentuk tabel dengan sumbu X sebagai posisi dan sumbu Y sebagai panjang.<\/li>\n\n\n\n<li>Untuk mendapatkan <strong>persamaan fungsi temperatur T(x,y)T(x,y)T(x,y)<\/strong>, kita menggunakan metode <strong>curve fitting<\/strong> dengan <strong>polynomial regression<\/strong>.<\/li>\n\n\n\n<li>Dari hasil curve fitting ini, kita memperoleh persamaan temperatur dalam bentuk polinomial.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>B. Perhitungan Fluks Panas<\/strong><\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Fluks panas dihitung berdasarkan <strong>hukum Fourier<\/strong>: q=\u2212kdTdxq = -k \\frac{dT}{dx}q=\u2212kdxdT\u200b dengan k=200k = 200k=200 W\/mK sebagai konduktivitas termal.<\/li>\n\n\n\n<li>Turunan parsial temperatur diperoleh dari hasil <strong>curve fitting<\/strong> untuk mendapatkan <strong>gradien temperatur<\/strong> dTdx\\frac{dT}{dx}dxdT\u200b.<\/li>\n\n\n\n<li>Hasilnya adalah <strong>heatmap fluks panas<\/strong> yang menunjukkan bagaimana panas berpindah pada sistem.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>C. Perhitungan Daya Total<\/strong><\/h3>\n\n\n\n<p>Daya total dihitung dengan melakukan <strong>integral numerik<\/strong>: P=\u222bAq\u2009dAP = \\int_A q \\, dAP=\u222bA\u200bqdA menggunakan metode <strong>integrasi numerik (trapezoidal rule)<\/strong> untuk mendapatkan total energi yang berpindah dalam sistem.<\/p>\n\n\n\n<p>Setelah menghitung kita bisa minta AI untuk mengenerate kode phyton agar kita bisa mendapatkan visualisasi flux panasnya, kode yang saya dapat adalah:<\/p>\n\n\n\n<h1 class=\"wp-block-heading\"><\/h1>\n\n\n\n<pre class=\"wp-block-code\"><code>import numpy as np\nimport matplotlib.pyplot as plt\nfrom scipy.optimize import curve_fit\n\ndef poly3(x, a, b, c, d):\n    return a*x**3 + b*x**2 + c*x + d\n\n# Data posisi (X) dan temperatur (Y) untuk setiap kolom dari J2 sampai J10\nx_data = np.array(&#91;0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0])\ny_data_sets = &#91;\n    &#91;303, 338, 351, 357, 360, 361, 360, 357, 351, 338, 303],\n    &#91;303, 324, 337, 345, 349, 350, 349, 345, 337, 324, 303],\n    &#91;303, 317, 329, 336, 340, 342, 340, 336, 329, 317, 303],\n    &#91;303, 314, 324, 328, 330, 335, 335, 336, 329, 314, 303],\n    &#91;303, 313, 321, 328, 332, 336, 332, 332, 324, 313, 303],\n    &#91;303, 313, 321, 328, 331, 333, 332, 331, 319, 313, 303],\n    &#91;303, 315, 324, 330, 333, 335, 333, 331, 315, 303, 303],\n    &#91;303, 319, 329, 335, 339, 339, 335, 324, 303, 303, 303],\n    &#91;303, 328, 338, 343, 345, 345, 345, 335, 319, 303, 303]\n]\n\nfig, axes = plt.subplots(3, 3, figsize=(12, 10))\naxes = axes.ravel()\n\nfor i in range(9):\n    params, _ = curve_fit(poly3, x_data, y_data_sets&#91;i])\n    x_fit = np.linspace(0, 1, 100)\n    y_fit = poly3(x_fit, *params)\n\n    axes&#91;i].scatter(x_data, y_data_sets&#91;i], color='red', label='Data Temperatur')\n    axes&#91;i].plot(x_fit, y_fit, color='blue', label='Curve Fitting')\n    axes&#91;i].set_title(f'Curve Fitting Posisi J{i+2}')\n    axes&#91;i].set_xlabel('Panjang (x)')\n    axes&#91;i].set_ylabel('Temperatur (K)')\n    axes&#91;i].legend()\n    axes&#91;i].grid(True)\n\nplt.tight_layout()\nplt.show()<\/code><\/pre>\n\n\n\n<p>Dan melalui kode tersebut saya bisa mendapatkan visualisasi distribusi flux panas sebagai berikut:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"813\" src=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-349-1024x813.png\" alt=\"\" class=\"wp-image-2644\" srcset=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-349-1024x813.png 1024w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-349-300x238.png 300w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-349-768x610.png 768w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-349-600x476.png 600w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2025\/03\/image-349.png 1387w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Berdasarkan perhitungan dan visualisasi yang telah dilakukan, berikut adalah kesimpulan yang dapat diambil:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1. Pola Distribusi Temperatur<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Dari hasil <strong>curve fitting<\/strong>, distribusi temperatur mengikuti pola polinomial orde tiga yang menggambarkan perubahan temperatur terhadap posisi dengan baik.<\/li>\n\n\n\n<li>Temperatur cenderung lebih tinggi di bagian tengah dan menurun di sisi-sisi tertentu, yang mengindikasikan adanya sumber panas atau perbedaan konduktivitas di berbagai area.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2. Fluks Panas dan Gradien Temperatur<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Hukum Fourier<\/strong> digunakan untuk menghitung fluks panas, di mana gradien temperatur terhadap posisi menunjukkan variasi perpindahan panas.<\/li>\n\n\n\n<li>Fluks panas lebih tinggi pada daerah dengan perubahan temperatur yang tajam, menunjukkan area dengan perpindahan panas lebih besar.<\/li>\n\n\n\n<li>Dari <strong>heatmap fluks panas<\/strong>, terlihat bahwa distribusi panas tidak merata dan menunjukkan pola perpindahan panas yang signifikan di beberapa wilayah.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3. Perhitungan Daya Total<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Melalui <strong>integrasi numerik<\/strong> terhadap fluks panas, diperoleh nilai daya total yang mencerminkan energi yang dipindahkan melalui sistem.<\/li>\n\n\n\n<li>Nilai daya ini menunjukkan bahwa sistem mengalami perpindahan energi yang dipengaruhi oleh gradien temperatur dan luas area perpindahan panas.<\/li>\n<\/ul>\n\n\n\n<p>Nah selesai sudah seluruh pemaparan yang dapat saya berikan, jika ada kekurangan saya meminta maaf jika ada kelebihan disimpan saja tidak usah dikembalikan, terima kasih atas kesempatannya selamat pagi.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Selamat pagi semuanya perkenalkan kembali Benedio Panjaitan satu satunya (the one and only) pada pagi hari ini kita harus selalu mulai dengan mengucap syukur atas rahmat Tuhan yang diberikan sehingga saya diberikan kesempatan untuk memaparkan materi pada hari ini. Yak kita mulai saja, pada kesempatan kali ini saya akan membuat curve fitting dan heat map [&hellip;]<\/p>\n","protected":false},"author":26,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26],"tags":[],"class_list":["post-2625","post","type-post","status-publish","format-standard","hentry","category-general"],"_links":{"self":[{"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/posts\/2625","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/users\/26"}],"replies":[{"embeddable":true,"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/comments?post=2625"}],"version-history":[{"count":1,"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/posts\/2625\/revisions"}],"predecessor-version":[{"id":2647,"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/posts\/2625\/revisions\/2647"}],"wp:attachment":[{"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/media?parent=2625"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/categories?post=2625"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/tags?post=2625"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}