Difference between revisions of "User:Bhamakerti.mohammad"
(→Progress Pekan 2) |
(→Progress Pekan 2) |
||
(6 intermediate revisions by the same user not shown) | |||
Line 47: | Line 47: | ||
Adapun constraintnya adalah : | Adapun constraintnya adalah : | ||
Tekanan 8 bar, volume 1 L, dan harga Rp.500.000 | Tekanan 8 bar, volume 1 L, dan harga Rp.500.000 | ||
+ | |||
+ | Prinsip utama dari optimisasi ini adalah untuk mencari kombinasi jari-jari dan tinggi tabung yang memenuhi batasan volume dan pada saat yang sama menghasilkan luas permukaan tabung yang minimal. | ||
+ | Dengan menggunakan metode optimisasi numerik, program mencari solusi yang mendekati nilai optimal dengan mengiterasi dan memperbaiki solusi secara bertahap. | ||
Untuk memperhitungkan optimasi dimensi, saya menggunakan pemrograman melalui kode berikut : | Untuk memperhitungkan optimasi dimensi, saya menggunakan pemrograman melalui kode berikut : | ||
Line 63: | Line 66: | ||
# Set variabel konstan | # Set variabel konstan | ||
− | target_volume = 1000 # Volume konstan (dalam | + | target_volume = 1000 # Volume konstan (dalam sentimeter kubik) |
# Definisikan masalah optimisasi | # Definisikan masalah optimisasi | ||
Line 69: | Line 72: | ||
return calculate_surface_area(x), volume_constraint(x, target_volume) | return calculate_surface_area(x), volume_constraint(x, target_volume) | ||
− | # Tetapkan | + | # Tetapkan tebakan awal untuk variabel optimisasi |
initial_guess = [1.0, 1.0] | initial_guess = [1.0, 1.0] | ||
Line 86: | Line 89: | ||
# Tampilkan hasil | # Tampilkan hasil | ||
− | print('Jari-jari Optimal:' | + | print('Jari-jari Optimal: {:.2f} cm'.format(optimal_radius)) |
− | print('Tinggi Optimal:' | + | print('Tinggi Optimal: {:.2f} cm'.format(optimal_height)) |
− | print('Luas Permukaan Optimal: | + | print('Luas Permukaan Optimal: {:.2f} cm^2'.format(optimal_surface_area)) |
</syntaxhighlight> | </syntaxhighlight> | ||
Line 95: | Line 98: | ||
Optimization Results: | Optimization Results: | ||
− | Jari-jari Optimal: 5. | + | Jari-jari Optimal: 5.42 cm |
+ | |||
+ | Tinggi Optimal: 10.84 cm | ||
+ | |||
+ | Luas Permukaan Optimal: 553.58 cm^2 | ||
+ | |||
+ | '''2) Material & Biaya''' | ||
+ | |||
+ | Pada kasus ini, saya menggunakan material alumunium 6061 dengan asumsi densitas 2,7 g/cm^3. Alumunium dipilih karena cukup kuat yaitu memiliki yield strenght 276 MPa. | ||
+ | |||
+ | Selanjutnya dihitung massa tabung dengan code berikut | ||
+ | |||
+ | <syntaxhighlight lang=xml> | ||
+ | import math | ||
+ | |||
+ | def calculate_cylinder_mass(radius, height, thickness, density_aluminum): | ||
+ | # Menghitung volume tabung internal | ||
+ | volume_internal = math.pi * radius**2 * height | ||
+ | |||
+ | # Menghitung volume dinding | ||
+ | radius_external = radius + thickness | ||
+ | volume_external = math.pi * radius_external**2 * height | ||
+ | |||
+ | # Menghitung volume tabung dengan dinding | ||
+ | volume_total = volume_external - volume_internal | ||
+ | |||
+ | # Menghitung massa tabung dengan dinding menggunakan kepadatan alumunium | ||
+ | mass = volume_total * density_aluminum | ||
+ | |||
+ | return mass | ||
+ | |||
+ | # Input | ||
+ | radius = 5.42 # cm | ||
+ | height = 10.84 # cm | ||
+ | thickness = 2 # mm | ||
+ | density_aluminum = 2.7 # g/cm^3 | ||
+ | |||
+ | # Konversi ke satuan yang sesuai | ||
+ | thickness = thickness / 10 # Konversi ketebalan dinding menjadi cm | ||
+ | density_aluminum = density_aluminum / 1000 # Konversi kepadatan menjadi kg/cm^3 | ||
+ | |||
+ | # Menghitung massa tabung kosong dengan dinding | ||
+ | mass = calculate_cylinder_mass(radius, height, thickness, density_aluminum) | ||
+ | |||
+ | # Menampilkan hasil | ||
+ | print("Massa tabung kosong dengan dinding alumunium:", mass, "kg") | ||
+ | |||
+ | </syntaxhighlight> | ||
+ | |||
+ | didapatkan massa dari tabung adalah 0,2 kg atau 200gram. biaya alumunium sendiri adalah Rp 37.000/kg, | ||
+ | |||
− | + | 3)'''Kesimpulan''' | |
− | + | pada tugas besar metode numerik ini, didapatkan desain optimal melalui perhitungan numerik dengan dimensi radius = 5.42 cm, | |
+ | height = 10.84 cm,thickness = 2 mm. Pemilihan material alumunium sudah cukup baik karena kuat dan harganya tidak terlalu mahal. |
Latest revision as of 12:24, 5 June 2023
Introduction
ٱلسَّلَامُ عَلَيْكُمْ وَرَحْمَةُ ٱللَّٰهِ وَبَرَكَاتُهُ
Perkenalkan saya Bhamakerti Mohammad Aydan biasa dipanggil Bhama dengan NPM 2106728023.
Saat ini saya sedang menjalani kelas Metode Numerik 01. Saya berharap bisa terus belajar dengan consciousness yang tinggi.
Progress Pekan 1
Tugas : Optimasi tangki hidrogen dengan kapasitas 1 liter, pressure 8 bar, dan biaya produksi maksimal Rp. 500.000
Pada pekan 1, saya membaca sebuah paper dari Jiai Chen, dkk(2018) dengan judul "Design And Optimization of High-Pressure Hydrogen Cylinders For Intermodal Container Transportation".
Pada paper tersebut, ada beberapa parameter yang mejadi fokus untuk melakukan optimisasi pada desain tabung hydrogen
1. Geometri dari tabung Pada bagian geometri, akan didapatkan nilai outer diameter (2r), length of cylinder (l), dan thickness of cylinder(t)
2. Tekanan Optimal hidrogen Parameter ini dicari untuk menentukan geometri dan ukuran dari tabung
3. Packing Problem Paper ini juga memperhatikan bagaimana mentransport hydrogen seefisien mungkin
Adapun workflow yang digunakan adalah sebagai berikut First, for a single cylinder with the external diameter (2𝑟) and the length of the cylinder body (𝑙), we will search for the optimal hydrogen pressure (Section 3). Second, with a given external diameter (2𝑟) of the cylinders, we will find the optimal body length (𝑙 ) (Section 4). Third, in the cross-section, circle packing problem in a square will be studied and optimal external diameter (2𝑟 ) will be found (Section 5). Finally, combining Sections 3-5, the optimal strategy can be attained.
Progress Pekan 2
Final Report
1) Dimensi optimal Dalam melakukan desain optimasi dari tabung hidrogen, parameter yang pertama diperhitungkan adalah dimensi dari tabung,
Adapun constraintnya adalah : Tekanan 8 bar, volume 1 L, dan harga Rp.500.000
Prinsip utama dari optimisasi ini adalah untuk mencari kombinasi jari-jari dan tinggi tabung yang memenuhi batasan volume dan pada saat yang sama menghasilkan luas permukaan tabung yang minimal. Dengan menggunakan metode optimisasi numerik, program mencari solusi yang mendekati nilai optimal dengan mengiterasi dan memperbaiki solusi secara bertahap.
Untuk memperhitungkan optimasi dimensi, saya menggunakan pemrograman melalui kode berikut :
import numpy as np
from scipy.optimize import minimize
def calculate_surface_area(x):
radius, height = x
return 2 * np.pi * radius * height + 2 * np.pi * radius**2
def volume_constraint(x, target_volume):
radius, height = x
return np.pi * radius**2 * height - target_volume
# Set variabel konstan
target_volume = 1000 # Volume konstan (dalam sentimeter kubik)
# Definisikan masalah optimisasi
def optimization_problem(x):
return calculate_surface_area(x), volume_constraint(x, target_volume)
# Tetapkan tebakan awal untuk variabel optimisasi
initial_guess = [1.0, 1.0]
# Definisikan batasan dan batas variabel optimisasi
constraints = [{'type': 'eq', 'fun': lambda x: optimization_problem(x)[1]}]
bounds = [(0, None), (0, None)]
# Lakukan optimisasi
result = minimize(lambda x: optimization_problem(x)[0], initial_guess, method='SLSQP', bounds=bounds, constraints=constraints)
# Ekstrak variabel hasil yang dioptimalkan
optimal_radius, optimal_height = result.x
# Hitung luas permukaan yang dioptimalkan
optimal_surface_area = calculate_surface_area([optimal_radius, optimal_height])
# Tampilkan hasil
print('Jari-jari Optimal: {:.2f} cm'.format(optimal_radius))
print('Tinggi Optimal: {:.2f} cm'.format(optimal_height))
print('Luas Permukaan Optimal: {:.2f} cm^2'.format(optimal_surface_area))
Sehingga didapatkan hasil
Optimization Results:
Jari-jari Optimal: 5.42 cm
Tinggi Optimal: 10.84 cm
Luas Permukaan Optimal: 553.58 cm^2
2) Material & Biaya
Pada kasus ini, saya menggunakan material alumunium 6061 dengan asumsi densitas 2,7 g/cm^3. Alumunium dipilih karena cukup kuat yaitu memiliki yield strenght 276 MPa.
Selanjutnya dihitung massa tabung dengan code berikut
import math
def calculate_cylinder_mass(radius, height, thickness, density_aluminum):
# Menghitung volume tabung internal
volume_internal = math.pi * radius**2 * height
# Menghitung volume dinding
radius_external = radius + thickness
volume_external = math.pi * radius_external**2 * height
# Menghitung volume tabung dengan dinding
volume_total = volume_external - volume_internal
# Menghitung massa tabung dengan dinding menggunakan kepadatan alumunium
mass = volume_total * density_aluminum
return mass
# Input
radius = 5.42 # cm
height = 10.84 # cm
thickness = 2 # mm
density_aluminum = 2.7 # g/cm^3
# Konversi ke satuan yang sesuai
thickness = thickness / 10 # Konversi ketebalan dinding menjadi cm
density_aluminum = density_aluminum / 1000 # Konversi kepadatan menjadi kg/cm^3
# Menghitung massa tabung kosong dengan dinding
mass = calculate_cylinder_mass(radius, height, thickness, density_aluminum)
# Menampilkan hasil
print("Massa tabung kosong dengan dinding alumunium:", mass, "kg")
didapatkan massa dari tabung adalah 0,2 kg atau 200gram. biaya alumunium sendiri adalah Rp 37.000/kg,
3)Kesimpulan
pada tugas besar metode numerik ini, didapatkan desain optimal melalui perhitungan numerik dengan dimensi radius = 5.42 cm, height = 10.84 cm,thickness = 2 mm. Pemilihan material alumunium sudah cukup baik karena kuat dan harganya tidak terlalu mahal.