Difference between revisions of "Algoritma Rudal X dan Y"

From ccitonlinewiki
Jump to: navigation, search
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
 +
Persamaan untuk rudal tersebut adalah sebagai berikut:
 +
 +
 +
[[File:Penurunan_Persamaan_Rudal_Ales.jpg|600px]]
 +
 +
Algoritma yang dibentuk disesuaikan dengan persamaan yang ada pada gambar tersebut. Berikut adalah algoritma yang sudah disusun pada program Phyton:
 +
 
''Sumbu X'' :
 
''Sumbu X'' :
  
Line 58: Line 65:
  
 
print('Kecepatan yang dihasilkan rudal pada sumbu x adalah', v1, 'm/s')
 
print('Kecepatan yang dihasilkan rudal pada sumbu x adalah', v1, 'm/s')
 +
 +
'''HASIL RUNNING SUMBU X'''
 +
 +
[[File:RudalSumbuX_Ales.jpg|800px]]
 +
 +
  
  
Line 118: Line 131:
  
 
print('Kecepatan yang dihasilkan rudal pada sumbu Y adalah', v2, 'm/s')
 
print('Kecepatan yang dihasilkan rudal pada sumbu Y adalah', v2, 'm/s')
 +
 +
 +
'''HASIL RUNNING SUMBU Y'''
 +
 +
[[File:RudalSumbuY_Ales.jpg|800px]]

Latest revision as of 09:31, 6 November 2019

Persamaan untuk rudal tersebut adalah sebagai berikut:


Penurunan Persamaan Rudal Ales.jpg

Algoritma yang dibentuk disesuaikan dengan persamaan yang ada pada gambar tersebut. Berikut adalah algoritma yang sudah disusun pada program Phyton:

Sumbu X :

from math import *

g = 9.81

m = eval(input("Massa rudal dalam kg: "))

sudut = eval(input("Sudut kemiringan rudal dalam derajat: "))

a = eval(input("Percepatan yang diinginkan: "))

cd = eval(input("Koefisien hambat udara: "))

alpha = sudut*0.0174

ay = a*(sin(alpha))

ax = a*(cos(alpha))

v0 = 0

x0 = 0

t0 = 0

dt = 0.1

error = 100

lst = []

def dxdt(t0, v0):

 return ((ax-(cd*v0**3/2)/m))

while error > 0.005:

 k1 = dt*dxdt(t0, v0)
 k2 = dt*dxdt(t0+0.5*dt, v0+0.5*dt*k1)
 k3 = dt*dxdt(t0+0.5*dt, v0+0.5*dt*k2)
 k4 = dt*dxdt(t0+dt, v0+k3*dt)
 v1 = v0 + (1/6)*(k1+2*k2+2*k3+k4)
 x0 = x0 + dt
 v0 = v1
 error = ((v1-v0)/v1)
 lst.append(1)
  1. dihasilkan perhitungan untuk sumbu X

print('Kecepatan yang dihasilkan rudal pada sumbu x adalah', v1, 'm/s')

HASIL RUNNING SUMBU X

RudalSumbuX Ales.jpg



Sumbu Y :

from math import *

g = 9.81

m = eval(input("Massa rudal dalam kg: "))

sudut = eval(input("Sudut kemiringan rudal dalam derajat: "))

a = eval(input("Percepatan yang diinginkan: "))

cd = eval(input("Koefisien hambat udara: "))

alpha = sudut*0.0174

ay = a*(sin(alpha))

ax = a*(cos(alpha))

v0 = 0

x0 = 0

t0 = 0

dt = 0.1

error = 100

lst = []

def dydt(t0, v0):

 return ((ay-(g*(cd*v0**3/2)/m)))

while error > 0.005:

 k1 = dt*dydt(t0, v0)
 k2 = dt*dydt(t0+0.5*dt, v0+0.5*dt*k1)
 k3 = dt*dydt(t0+0.5*dt, v0+0.5*dt*k2)
 k4 = dt*dydt(t0+dt, v0+k3*dt)
 v2 = v0 + (1/6)*(k1+2*k2+2*k3+k4)
 x0 = x0 + dt
 v0 = v2
 error = ((v2-v0)/v2)
 lst.append(1)
  1. dihasilkan perhitungan untuk sumbu Y

print('Kecepatan yang dihasilkan rudal pada sumbu Y adalah', v2, 'm/s')


HASIL RUNNING SUMBU Y

RudalSumbuY Ales.jpg