Difference between revisions of "Farhan Adryansyach"

From ccitonlinewiki
Jump to: navigation, search
(Design & Optimization of Pressurized Hydrogen Storage)
(Final Report of Design and Optimization of Pressurized Hydrogen Storage)
 
Line 1: Line 1:
== Final Report of Design and Optimization of Pressurized Hydrogen Storage ==
 
a result of design optimization of a pressurized hydrogen storage. The method we use is to first measure how large the optimal tube size is to accommodate 1 liter of hydrogen at a pressure of 8 bar. with a cost of less than IDR 500,000.00. The calculation begins with finding the optimal
 
  
dimensions of the tube.
 
def objective_function(x):
 
  radius = x[0]
 
  height = x[1]
 
  surface_area = calculate_cylinder_surface_area(radius, height)
 
  cost = calculate_cylinder_cost(surface_area)
 
  return cost
 
def calculate_cylinder_surface_area(radius, height):
 
  lateral_area = 2 * math.pi * radius * height
 
  base_area = math.pi * radius**2
 
  total_area = lateral_area + 2 * base_area
 
  return total_area
 
def calculate_cylinder_cost(surface_area):
 
  # Menghitung biaya berdasarkan luas permukaan tabung
 
  # Anda dapat menyesuaikan fungsi ini dengan estimasi biaya bahan dan produksi yang relevan
 
  return surface_area * cost_per_unit_area
 
#Mendefinisikan batasan untuk radius dan tinggi tabung
 
def constraint(x):
 
  radius = x[0]
 
  height = x[1]
 
  volume = math.pi * radius**2 * height
 
  return volume - 1  # Volume harus sama dengan 1L (1000 cm^3)
 
#Mendefinisikan fungsi untuk mencetak solusi terbaik
 
def print_solution(x):
 
  radius = x[0]
 
  height = x[1]
 
  surface_area = calculate_cylinder_surface_area(radius, height)
 
  cost = calculate_cylinder_cost(surface_area)
 
  print("Optimization Result:")
 
  print("Radius:", radius)
 
  print("Height:", height)
 
  print("Surface Area:", surface_area)
 
  print("Cost:", cost)
 
# Menentukan batasan dan inisialisasi nilai awal
 
x0 = [1, 1]  # Nilai awal radius dan tinggi tabung
 
volume_constraint = {'type': 'eq', 'fun': constraint}  # Batasan volume harus sama dengan 1L (1000 cm^3)
 
bounds = [(0, None), (0, None)]  # Batasan non-negatif untuk radius dan tinggi
 
# Melakukan optimisasi menggunakan metode SLSQPresult = minimize(objective_function, x0, method='SLSQP', bounds=bounds,
 
constraints=volume_constraint)
 
# Ekstrak variabel hasil yang dioptimalkan
 
  radius_optimasi, tinggi_optimasi = hasil.x
 
# Hitung luas permukaan yang dioptimalkan
 
  luas_permukaan_optimal = hitungLuasPermukaan([radius_optimasi, tinggi_optimasi])
 
# Tampilkan hasil
 
  print('Jari-jari teroptimasi:', radius_optimasi, 'cm')
 
  print('Tinggi teroptimasi:', tinggi_optimasi, 'cm')
 
  print('Luas Permukaan teroptimasi:', luas_permukaan_optimasi, 'cm^2')
 
 
Output Hitungan
 
 
Jari-jari teroptimasi: 5.5111852 cm
 
  Tinggi teroptimasi: 9.9124114 cm
 
  Luas Permukaan teroptimasi: 534.08519 cm^2
 
 
Setelah itu, kita akan mulai mencari ketebalan material optimal untuk dapat mengatasi stress yang diberikan saat penggunaannya. dalam perhitungan ini, digunakan lah rumus hoop stress. lalu, dalam pemilihan material saya menggunakan Stainless steel ASTM 316 dengan tingkat kekuatan yield strength adalah 206 Mpa dan Tensile Strength adalah 517 Mpa. dengan ini, perhitungan yang dilakukan adalah.
 
 
 
 
      # Definisikan fungsi untuk menghitung tegangan cincin (hoop stress)
 
def calculate_hoop_stress(thickness, inner_diameter, outer_diameter, pressure):
 
  inner_radius = inner_diameter / 2
 
  outer_radius = outer_diameter / 2
 
  hoop_stress = (pressure * (outer_radius**2 - inner_radius**2)) / (thickness * (outer_radius - inner_radius))
 
  return hoop_stress
 
  # Definisikan parameter dan batasan
 
  target_stress = 206000000  # Target tegangan cincin yang ingin dicapai
 
  min_thickness = 0.004 # Batasan tebal minimum
 
  max_thickness = 0.015 # Batasan tebal maksimum
 
# Inisialisasi tebal awal
 
thickness = 0.004
 
# Proses iterasi untuk mengoptimalkan tebal plate
 
while True:
 
  # Hitung tegangan cincin berdasarkan tebal saat ini
 
  hoop_stress = calculate_hoop_stress(thickness, inner_diameter, outer_diameter, pressure)
 
  # Periksa apakah tegangan cincin sudah mencapai target
 
  if hoop_stress >= target_stress:
 
      break  # Keluar dari iterasi jika tegangan cincin sudah mencapai target
 
  # Sesuaikan tebal plate berdasarkan perbandingan tegangan cincin dengan target
 
  thickness += 0.1
 
  # Periksa batasan tebal minimum dan tebal maksimum
 
  if thickness < min_thickness:
 
      thickness = min_thickness
 
  elif thickness > max_thickness:
 
      thickness = max_thickness
 
# Cetak tebal plate yang dihasilkan
 
print("Optimized Plate Thickness:", thickness, 'm')
 
Output hitungan dari ketebalan plate
 
 
  Optimized Plate Thickness: 0.01 m
 
 
 
 
after getting the optimal thickness of the plate material, then we want to know how much the price must be paid to manufacture the pressurized Hydrogen Storage. the thing to do is, we will look for the market price of the material, then we will adjust it to the amount we will use. by doing calculations in excel, it was found that the plate value to be used to design the tube is approximately 5,124 kg. then, the price that must be spent in manufacturing is approximately Rp. 349355.8011 so that a result is obtained that is close to correct or optimal regarding a pressurized hydrogen storage that can accommodate 1 liter of hydrogen with an internal pressure of 8bar. Also, this design tube is still worth less than Rp. 500,000.00 which is the budget limit for manufacturing so that optimal spending is also obtained. it is hoped that the designed design and optimization can work as it should.
 

Latest revision as of 11:15, 21 July 2023