Difference between revisions of "Talk:Oscillating one-dimensional systems"

From ccitonlinewiki
Jump to: navigation, search
(Created page with "<comments />")
 
 
(2 intermediate revisions by the same user not shown)
(No difference)

Latest revision as of 19:00, 12 April 2020


Wisnu indrawan

56 months ago
Score 0++

Example 1 ProgrammingtheNumericalMethod;theSpecialCase

from numpy import zeros, linspace, pi, cos, array import matplotlib.pyplot as plt

omega = 2 P = 2*pi/omega dt = P/20 T = 3*P N_t = int(round(T/dt)) t = linspace(0, N_t*dt, N_t+1)

u = zeros(N_t+1) v = zeros(N_t+1)

  1. Initial condition

X_0 = 2 u[0] = X_0 v[0] = 0

  1. Step equation forward in time

for n in range(N_t): u[n+1] = u[n] + dt*v[n] v[n+1] = v[n] - dt*omega**2**u[n]


fig = plt.figure() l1, l2 = plt.plot(t, u, 'b-', t, X_0*cos(omega*t), 'r--') fig.legend((l1, l2), ('numerical', 'exact'), 'upper left') plt.xlabel('t') plt.show() plt.savefig('tmp.pdf'); plt.savefig('tmp.png')

result from compiler

Wisnu indrawan

56 months ago
Score 0++
Resultwisnu4.png

Paskal.rachman

56 months ago
Score 0++
menarik hal ini mengenai penyelesaian yang example 1 yang telah dilakukan saudara wisnu. karena ada beberapa poin yang belum saya pahami pada example 1 ini, jika berkenan bisa dijelaskan tentang grafik hasil programming yang saudara telah buat, disana terdapat dua grafik dimana grafik pertama memperlihatkan metode numeric dan exact grafiknya menyerupai sedangkan grafik yang kedua antara numeric dan exact berbeda. apakah ada keterkaitannya antara kedua hal ini?

Wisnu indrawan

56 months ago
Score 0++
Resultwisnu1.png

Wisnu indrawan

56 months ago
Score 0++

Grafik exmaple 1 ProgrammingtheNumericalMethod;theSpecialCase

Resultwisnu2.png

Wisnu indrawan

56 months ago
Score 0++

Exmaple 2 4.3.4 AMagicFixoftheNumericalMethod

from numpy import zeros, linspace, pi, cos, array import matplotlib.pyplot as plt

omega = 2 P = 2*pi/omega dt = P/20 T = 3*P N_t = int(round(T/dt)) t = linspace(0, N_t*dt, N_t+1)

u = zeros(N_t+1) v = zeros(N_t+1)

  1. Menginisiasi kondisi

u[0] = 2 v[0] = 0

  1. Step persamaan untuk maju dalam waktu

for n in range(N_t): v[n+1] = v[n] - dt*omega**2*u[n] u[n+1] = u[n] + dt*v[n+1]


fig = plt.figure() l1, l2 = plt.plot(t, u, 'b-', t, X_0*cos(omega*t), 'r--') fig.legend((l1, l2), ('metode numerical', 'metode exact'), 'upper left') plt.xlabel('t') plt.show()

plt.savefig('tmp.pdf'); plt.savefig('tmp.png')

Wisnu indrawan

56 months ago
Score 0++

Revisi code

from numpy import zeros, linspace, pi, cos, array import matplotlib.pyplot as plt

omega = 2 P = 2*pi/omega dt = P/20 T = 3*P N_t = int(round(T/dt)) t = linspace(0, N_t*dt, N_t+1)

u = zeros(N_t+1) v = zeros(N_t+1)

  1. Menginisiasi kondisi

X_0 = 2 u[0] = X_0 v[0] = 0

  1. Step persamaan untuk maju dalam waktu

for n in range(N_t): v[n+1] = v[n] - dt*omega**2*u[n] u[n+1] = u[n] + dt*v[n+1]


fig = plt.figure() l1, l2 = plt.plot(t, u, 'b-', t, X_0*cos(omega*t), 'r--') fig.legend((l1, l2), ('metode numerical', 'metode exact'), 'upper left') plt.xlabel('t') plt.show() plt.savefig('tmp.pdf'); plt.savefig('tmp.png')


Resultwisnu3.png

Wisnu indrawan

56 months ago
Score 0++
Resultwisnu4.png

Jeriatthabari

56 months ago
Score 0++
saudara wisnu, saya akan sangat berterima kasih jikalau anda berkenan menjelaskan kepada saya hal apa yang paling membedakan proses pengerjaan example 1 dan example 2 yang ada sudah tuliskan sebelumnya. apakah grafik osilasi yang terbentuk merupakan bagian dari example 1? dan apakah example 2 juga seharusnya memiliki grafik?

Jeriatthabari

56 months ago
Score 0++
Banyak permasalahan engineering yang dapat diselesaikan menggunakan proses komputasi numerik. pemilihan penggunaan komputasi numerik dilakukan ketika proses komputasi secara analitik cenderung menyulitkan seorang peneliti untuk melakukan perhitungan. salah satu permasalahan yang persamaan matematis nya diselesaikan secara numerik daripada metode analitik adalah kasus osilasi. seperti yang saudara Wisnu telah tuliskan sebelumnya, tulisan tersebut merupakan contoh proses komputasi numerik menggunakan bahasa pemograman

Ahmadzikri.engineer

56 months ago
Score 0++

Itulah mengapa mechanical engineering memerlukan matematika? Sebetulnya, pertanyaan serupa adalah: mengapa fisika membutuhkan matematika? Ya, matematika adalah satu-satunya alat untuk bisa mengukur sesuatu secara kuantitatif (ter-angka-kan). Konsep-konsep dalam fisika sebetulnya adalah sekumpulan formulai mengenai sunnatullah fil kaun, misalnya hukum gravitasi, hukum kelembaman, hukum kekekalan energi, dsb., khususnya dalam hal ini yaitu Oscillating One-Dimensional Systems. Nah, agar konsep-konsep tersebut bisa dituangkan dalam rumusan yang bisa diukur secara kuantitatif, dibutuhkanlah matematika. Sehingga, muncullah konsep-konsep fisika itu dalam bentuk rumus-rumus matematika. Dari sinilah kita memahami bahwa seseorang yang mendalami engineering harus bagus dalam matematika. Berbicara tentang matematika itu sendiri, ia terbagi menjadi tiga cabang utama: aljabar (algebra), geometry, dan kalkulus. Wikipedia mendefinisikan ketiga cabang matematika ini dengan sangat baik: “Algebra is the study of operations and their application to solving equations, geometry is the study of shape, and calculus is the study of change.” Ilmu matematika yang pertama kali harus dikuasai adalah aljabar, termasuk didalamnya aljabar matriks. Kalau sudah menguasai aljabar, seseorang bisa belajar geometri dan atau kalkulus. Dalam engineering, kalkulus adalah tool yang “wajib” dikuasai, karena hampir semua permasalahan dalam engineering dirumuskan dalam fungsi-fungsi kalkulus. Tidak terkecuali mechanical engineering. Dalam mechanical enginnering, hampir semua permasalahan mekanika baik itu statika, kinematika, maupun dinamika dirumuskan dalam fungsi-fungsi kalkulus. Sekarang saya akan menggambarkan bagaimana matematika, khususnya kalkulus, berperan dalam mechanical engineering. Pertama-tama, suatu permasalahan dikenali dan diidentifikasi. Selanjutnya, yang harus dilakukan adalah memodelkan permasalahan tersebut dalam model matematika. Hanya dengan cara inilah, permasalahan tersebut nanti akan bisa dicari solusinya secara tepat dan terukur. Permasalahan dalam dunia riil selalu kompleks. Variabel-variabel yang ada selalu banyak. Karena itulah, dalam proses pembelajaran biasanya variabel-variabel dipersempit (dikurangi). Ini sebenarnya dilakukan dengan melakukan asumsi-asumsi pada variabel-variabel yang “diabaikan”. Dengan mempersempit (mengurangi) variabel, model matematika yang dihasilkan akan lebih sederhana, sehingga lebih mudah dipecahkan, bahkan dengan matematika yang sederhana. Namun dalam kenyataannya, sekali lagi, variabel-variabel dalam permasalahan riil sangatlah banyak. Akibatnya, model matematika yang dihasilkan pun menjadi kompleks. Tantangannya kemudian adalah bagaimana menyelesaikan (mencari solusi) model matematika yang kompleks tadi. Sebetulnya, cara paling eksak untuk menyelesaikan suatu model matematika adalah penyelesaian secara analitis. Ini artinya, kita ambil kertas dan bolpoin, lalu kita selesaikan model matematika tersebut dengan mengutak-atik fungsi-fungsi yang ada, berdasarkan rumus-rumus matematika yang telah ada. Namun jika suatu model matematika sudah cukup kompleks, akan sangat sulit mencari penyelesaian akhirnya (angka terakhir). Dalam kondisi seperti inilah, penyelesaian secara numerik menjadi pilihan terbaik. Hanya saja, penyelesaian numerik sebetulnya adalah suatu aproksimasi. Akan ada sedikit error dari nilai eksak yang sebenarnya, namun berbagai metode numerik telah ditemukan untuk memperkecil error tersebut sekecil-kecilnya sehingga besarnya error menjadi “tidak signifikan”.

Kelebihan yang paling menonjol dari metode numerik ini adalah: bisa mengeksploitasi “kecerdasan” komputer. Memang kalau seluruh hitung-hitungan numerik dituliskan diatas kertas, bisa menghabiskan segudang kertas. Dan akan lama kalau dikerjakan secara manual. Namun dengan komputer, semua proses menghitung itu bisa dikerjakan dengan sangat cepat.

Karena metode numerik ini adalah metode yang mengeksploitasi “kecerdasan” komputer, maka muncullah berbagai macam software untuk penyelesaian numerik.

Adhika Satyadharma

56 months ago
Score 0++

Jadi masalah dalam kasus ini adalah adanya sebuah persamaan defrential orde 2 yang ingin diselesaikan secara numerik. Hanya saja persamaan defrential tidak dapat serta merta langsung diselesaikan secara numerik. Untuk memberi ilutrasi lebih jelas coba perhatikan kedua persamaan berikut:


x^2 = 5


Pada persamaan ini nilai x dapat langsung ditebak, dan apabila tebakannya salah nilai x hanya perlu dikoreksi dengan delta x, sehingga dengan berlangsungnya proses iterasi maka nilai x^2 akan semakin mendekati 5. Hanya saja pada sebuah persamaan defrential, variable apakah yang ditebak dan dikoreksi? Terkhususnya bagiamana cara menghitung nilai dari bentuk "dy/dx"? Term ini harus dirubah ke bentuk yang lebih mudah dipahami, khususnya oleh komputer sehingga metode numerik dapat diaplikasikan. Proses perubahan ini dapat dilakukan dengan berbagai cara, seperti forward euler/differnce, backwards euler/difference, dan central difference.

Muhammadiqbalk

56 months ago
Score 0++

Untuk menyelesaikan persamaan orde dua dapat diselesaikan dengan beberapa pendekatan salah satunya

Metode Euler

Suatu persamaan diferensial (dy dt) dinyatakan dalam fungsi f(t,y), dimana y(t) adalah persamaan asalnya

dy/dt = f(t,y), a ≤ t ≤ b, y(a) = α

Nilai t dibatasi dari a hingga ke b. Sementara, syarat awal telah diketahui yaitu pada saat t = a maka y bernilai α. Akan tetapi kita sama sekali tidak tahu bentuk formulasi persamaan asalnya y(t). kurva persamaan asal y(t) yang tidak diketahui bentuk formulasinya. Tantangannya adalah bagaimana kita bisa mendapatkan solusi persamaan diferensial untuk setiap nilai y(t) yang t-nya terletak diantara a dan b.

Tahap awal solusi pendekatan numerik adalah dengan menentukan point-point dalam jarak yang sama di dalam interval [a,b]. Jarak antar point dirumuskan sebagai

h =b−a/N

dengan N adalah bilangan integer positif. Nilai h ini juga dikenal dengan nama step size . Selanjutnya nilai t diantara a dan b ditentukan berdasarkan

ti = a + ih, i = 0,1,2,...,N

Metode Euler diturunkan dari deret Taylor. Misalnya, fungsi y(t) adalah fungsi yang kontinyu dan memiliki turunan dalam interval [a,b]. Dalam deret Taylor, fungsi y(t) tersebut dirumuskan sebagai

y(ti+1) = y(ti) + (ti+1 −ti)y′(ti) + ((ti+1 −ti)2)/2 y′′(ξi)

dengan memasukkan h = (ti+1 −ti), maka

y(ti+1) = y(ti) + hy′(ti) + h2 2 y′′(ξi)

dan, karena y(t) memenuhi persamaan diferensial, dimana y′(ti) tak lain adalah fungsi turunan f(ti,y(ti)), maka

y(ti+1) = y(ti) + hf(ti,y(ti)) + h2/2 y′′(ξi)

Metode Euler dibangun dengan pendekatan bahwa suku terakhir dari persamaan, yang memuat turunan kedua,dapatd iabaikan. Disamping itu,pada umumnya,notasi penulisan bagi y(ti) diganti dengan wi. Sehingga metode Euler diformulasikan sebagai

wi+1 = wi + hf(ti,wi) dengan syarat awal w0 = α

dimana i = 0,1,2,..,N −1.

sumber : Buku ajar Komputasi untuk Sains danTeknik. Departemen FMIPA

Adinda

56 months ago
Score 0++

sebagai tambahan untuk membantu memahami mengenai metode euler, berikut terdapat video yang menjelaskan suatu cara untuk menyelesaikan analisis numerik dengan metode euler. dimana dijelaskan sumber error pada metode euler, yaitu pemotongan atau diskretisasi (error yang disebabkan oleh teknik yang digunakan), serta round-off (error yang disebabkan terbatasnya digit signifikan yang dapat dihitung oleh komputer.

untuk lebih jelasnya dapat dilihat pada video dibawah ini. grafik dan langkah sangat mudah dipahami.

https://www....=w65JsURu02Q

KaniaAS

56 months ago
Score 0++
melanjutkan apa yang sudah dijabarkan oleh saudara Jeri, bahwasannya penggunaan komputasi teknik sangat bermaanfaat untuk membantu dalam menggambarkan kejadian/kondisi pada bidang keteknikan, jika menggunakan proses analitik pada suatu persoalan keteknikian, seperti persoalan di atas maka kita hanya bisa mendapatkan solusi untuk titik tertentu saja, juga membutuhkan waktu untuk melakukan perhitungan serta ketelitian yang cukup baik untuk menyelesaikan persamaan yang ada, namun jika kita menggunakan metode numerik untuk menyelesaikan permasalahan tersebut maka kita dapat melihat kejadian atau kondisi yang terjadi pada setiap titik dengan cepat dan tepat. Pengaplikasian komputasi teknik untuk menyelesaikan persoalan metode numerik sangat membantu proses perhitungan dan meminimalisir waktu dalam pengerjaan persoalan.

Anonymous user #1

56 months ago
Score 1 You

Melanjutkan apa yang sudah dijelaskan oleh saudara Jerry dan Saudari Kania. Dalam hal ini, Python merupakan bahasa pemrograman tingkat tinggi yang dewasa ini telah menjadi standar dalam dunia komputasi ilmiah. Python merupakan bahasa pemrograman open source multiplatform yang dapat digunakan pada berbagai macam sistem operasi (Windows, Linux, dan MacOS). Selain itu, Python juga merupakan bahasa pemrograman yang fleksibel dan mudah untuk dipelajari. Program yang ditulis dalam Python umumnya lebih mudah dibaca dan jauh lebih ringkas dibandingkan penulisan program dalam bahasa C atau Fortran. Python juga memiliki modul standar yang menyediakan sejumlah besar fungsi dan algoritma, untuk menyelesaikan pekerjaan seperti mengurai data teks, memanipulasi dan menemukan file dalam disk, membaca / menuliskan file terkompresi, dan mengunduh data dari server web. Dengan menggunakan Python, para programmer juga dapat dengan mudah menerapkan teknik komputasi tingkat lanjut, seperti pemrograman berorientasi objek. Bahasa pemrograman Python dalam banyak hal berbeda dengan bahasa pemrograman prosedural, seperti C; C++; dan Fortran. Dalam Fortran, C, dan C++, file source code harus dikompilasi ke dalam bentuk executable file sebelum dijalankan. Pada Python, tidak terdapat langkah kompilasi, sebagai gantinya source code ditafsirkan secara langsung baris demi baris. Keunggulan utama dari suatu bahasa pemrograman terinterpretasi seperti Python adalah tidak membutuhkan pendeklarasian variabel, sehingga lebih fleksibel dalam penggunaannya. Namun, terdapat kelemahan yang mencolok, yaitu program – program numerik yang dijalankan pada Python lebih lambat ketimbang dijalankan menggunakan bahasa pemrograman terkompilasi. Meskipun bekerja dengan agak lambat, Python memiliki banyak fungsi – fungsi sederhana yang dapat menjalankan hal – hal yang umumnya dikerjakan dengan subroutine rumit dalam C atau

Fortran. Sehingga Python merupakan pilihan tepat dalam komputasi ilmiah dewasa ini.

Muhammadiqbalk

56 months ago
Score 0++

Melanjutkan apa yang sudah dijelaskan oleh saudara Jerry dan Saudari Kania. Dalam hal ini, Python merupakan bahasa pemrograman tingkat tinggi yang dewasa ini telah menjadi standar dalam dunia komputasi ilmiah. Python merupakan bahasa pemrograman open source multiplatform yang dapat digunakan pada berbagai macam sistem operasi (Windows, Linux, dan MacOS). Selain itu, Python juga merupakan bahasa pemrograman yang fleksibel dan mudah untuk dipelajari. Program yang ditulis dalam Python umumnya lebih mudah dibaca dan jauh lebih ringkas dibandingkan penulisan program dalam bahasa C atau Fortran. Python juga memiliki modul standar yang menyediakan sejumlah besar fungsi dan algoritma, untuk menyelesaikan pekerjaan seperti mengurai data teks, memanipulasi dan menemukan file dalam disk, membaca / menuliskan file terkompresi, dan mengunduh data dari server web. Dengan menggunakan Python, para programmer juga dapat dengan mudah menerapkan teknik komputasi tingkat lanjut, seperti pemrograman berorientasi objek. Bahasa pemrograman Python dalam banyak hal berbeda dengan bahasa pemrograman prosedural, seperti C; C++; dan Fortran. Dalam Fortran, C, dan C++, file source code harus dikompilasi ke dalam bentuk executable file sebelum dijalankan. Pada Python, tidak terdapat langkah kompilasi, sebagai gantinya source code ditafsirkan secara langsung baris demi baris. Keunggulan utama dari suatu bahasa pemrograman terinterpretasi seperti Python adalah tidak membutuhkan pendeklarasian variabel, sehingga lebih fleksibel dalam penggunaannya. Namun, terdapat kelemahan yang mencolok, yaitu program – program numerik yang dijalankan pada Python lebih lambat ketimbang dijalankan menggunakan bahasa pemrograman terkompilasi. Meskipun bekerja dengan agak lambat, Python memiliki banyak fungsi – fungsi sederhana yang dapat menjalankan hal – hal yang umumnya dikerjakan dengan subroutine rumit dalam C atau

Fortran. Sehingga Python merupakan pilihan tepat dalam komputasi ilmiah dewasa ini.

Surya94aji

56 months ago
Score 0++

Menambahkan, untuk rangkuman materi Sistem Osilasi satu dimensi pada buku "Programming for Computations - Python_ A Gentle Introduction to Numerical Simulations with Python (2016, Springer)" ditulis Svein Linge dan Hans Petter Langtangen

4.3.1 Penurunan Model Sederhana 4.3.2 Solusi Numerik 4.3.3 Memprogram Metode Numerik; Kasus Khusus 4.3.4 Perbaikan dari Metode Numerik 4.3.5 Metode Runge-Kutta Orde 2 (atau Metode Heun) 4.3.6 Perangkat Lunak untuk Menyelesaikan ODEs 4.3.7 Metode Runge-Kutta Orde 4 4.3.8 Lebih Banyak Efek: Redaman, Nonlinier, dan Kekuatan Eksternal 4.3.9 Ilustrasi Redaman Linear 4.3.10 Ilustrasi Redaman Linear dengan Eksitasi Sinusoidal 4.3.11 Sistem Pegas-Massa dengan Gesekan Geser 4.3.12 Metode Perbedaan Hingga; Undamped, Linear Case

4.3.13 Metode Perbedaan Hingga; Redaman Linier

Surya94aji

56 months ago
Score 0++

Menambahkan, untuk rangkuman materi Sistem Osilasi satu dimensi pada buku "Programming for Computations - Python_ A Gentle Introduction to Numerical Simulations with Python (2016, Springer)" ditulis Svein Linge dan Hans Petter Langtangen

4.3.1 Penurunan Model Sederhana

4.3.2 Solusi Numerik

4.3.3 Memprogram Metode Numerik; Kasus Khusus

4.3.4 Perbaikan dari Metode Numerik

4.3.5 Metode Runge-Kutta Orde 2 (atau Metode Heun)

4.3.6 Perangkat Lunak untuk Menyelesaikan ODEs

4.3.7 Metode Runge-Kutta Orde 4

4.3.8 Lebih Banyak Efek: Redaman, Nonlinier, dan Kekuatan Eksternal

4.3.9 Ilustrasi Redaman Linear

4.3.10 Ilustrasi Redaman Linear dengan Eksitasi Sinusoidal

4.3.11 Sistem Pegas-Massa dengan Gesekan Geser

4.3.12 Metode Perbedaan Hingga; Undamped, Linear Case

4.3.13 Metode Perbedaan Hingga; Redaman Linier

Harrypurnama

56 months ago
Score 0++

Persamaan diferensial merupakan persoalan matematis yang sering dijumpai dalam bidang keteknikan. Sering kali suatu persamaan diferensial tidak dapat diselesaikan secara analitik sehingga diperlukan metode numerik untuk menyelesaikannya.

Sebuah persamaan diferensial f′(x,…) merupakan hasil diferensiasi beberapa fungsi f(x,…). Proses penyelesaian persamaan diferensial, dan menemukan nilai f(x,…) untuk beberapa nilai x,… tidak dimungkinkan karena integral dari f′(x,…) hanya digambarkan bentuk umum. beberapa metode yang akan yang digunakan untuk menyelesaikan persamaan diferensial, antara lain:

1. Metode Euler 2. Metode Heun 3. Metode Titik Tengah 4. Metode Runge-Kutta Orde 4

5. Metode multistep linier

Isyroqialghifari

56 months ago
Score 0++
bagus sekali penjelasan dari saudara Harry Purnama. Jadi kita dapat mengetahui beberapa penyelesaian persamaan diferensial. Saudara harry purnama menjelaskan ada 5 penyelesaian persamana diferensial yang ciamik. Cukup baik untuk dipelajari

Kaniadyah

56 months ago
Score 0++
untuk metode-metode ini, apakah jika masing-masing metode digunakan untuk penyelesaian suatu persamaan, hasilnya akan sama?

Muhammadiqbalk

56 months ago
Score 1++

Python terkenal akan bermacam-ragam kerangka kerjanya, memberikan sejumlah besar potongan kode yang sudah tertulis yang memungkinkan pengembang untuk meningkatkan kualitas proyek mereka. Hal yang sama berlaku untuk penambangan data. Berikut adalah daftar kerangka kerja paling populer untuk melakukan analisis data:

Numpy adalah kerangka kerja terkemuka yang dirancang untuk perhitungan numerik dalam Python.

SciPy adalah modul untuk sains, matematika, dan teknik. Scikit-Learn adalah kerangka kerja machine learning Python untuk penambangan data yang produktif, sehingga memungkinkan untuk melakukan proses regresi, pengelompokan, pemilihan model, preprocessing, dan klasifikasi.

Dask adalah kerangka kerja untuk paralelisme lanjutan untuk analitik dan penskalaan klaster ribuan simpul (thousand-node clusters).

Isyroqialghifari

56 months ago
Score 1++
Menarik pengertiannya. bagus juga penjelasan dari saudara iqbal untuk masalah perpythonan ini. Karena sebelum kita masuk ke dalamnya, ada baiknya kita mengetahui pengertian pengertian dasar tentang python itu sendiri. karena di dunia perpythonan, kita juga dituntut untuk mengerti bahasa pemograman. Yang bilamana kita tidak mengerti maka akan kesulitan dalam kedepannya

S.ichwan

56 months ago
Score 0++
hal yang lebih mendasar dari case ini adalah, mengapa menggunakan Phyton? kenapa dipilih Phyton dari sekian banyak pemrograman yang ada. pertanyaan ini akan otoamtis meengerucutkan pemahaman akan alasan yang mendasari dari pemilihan phyton ini dibandingkan program lainnya.

Adzanna

56 months ago
Score 0++
mungkin alasan utama nya adalah pyhton lebih mudah untuk di gunakan ( pendapat di website ) dan gratis. tapi karena saya belum pernah menggunakan phyton juga. mungkin bukan program , tetapi bahasa pemograman. setau saya phyton itu bahasa pemograman.

Anonymous user #1

56 months ago
Score 1 You
Melihat diskusi dari teman-teman disini cukup menarik, namun demikian, menruut saya, sebelum kita membicaarakan tentan python, kita membicarakan terlebih dahulu mengenai metode numerik yang di bahasa pada page ini. Sekilas jika saya membaca, page ini membicarakan tentang aplikasi penyelesaian gerak osilasi dengan menggunakan prinsip penyelesaian persamaan differensial. Yang saya pahami, dengan menggunakan metode numerik, kita dapat menyelesaikan persamaan differensial. Metode numerik yang diganakn untuk menyelesaikan persamaan differensial itu sendiri terdiri dari beberapa metode, diantara metode yang umum digunakan adalah metode Runge-Kutta. Nah, metode runge-kutta ini, jika diselesaikan secara manual, maka membutuhkan perhitungan yang cukup panjang. Oleh karena itu, kita bisa memanfaatkan Python, sebagai salah satu bahasa pemrograman yang bersifat Open Source, dapat dimanfaatkan untuk menyelesaikan persamana differensial secara numerik dengan menggunakan metode Runge-Kutta.

Edosyafei

56 months ago
Score 0++
Mohon maaf ini komentar dari saya, saya lupa log in barusan ehehehe

Shbrnf

56 months ago
Score 0++
mantap, do. thanks banget pencerahannya. jadi begitu ya rupanya awal mula pemilihan python.

Anonymous user #1

56 months ago
Score -1 You
Sikilas penjelasan terkait Metode Runge Kutta, metode ini adalah suatu metode yang digunakan untuk menyelesaikan persamaan diferensial secara numerik atau pendekatan sehingga mendapatkan penyelesaian yang lebih signifikan daripada penyelesaian secara eksak atau analitik. Metode Runge Kutta merupakan gabungan dari suatu kelas besar metode pendekatan satu langkah (metode Euler, Heun, dan titik tengah). Metode ini mencapai keakuratan dari suatu pendekatan Taylor tanpa memerlukan turunan-turunan tingkat tinggi.

Ahmadzikri.engineer

56 months ago
Score 0++

Afwan.... statement ini dari ane tadi lupa sign in juga:

Sikilas penjelasan terkait Metode Runge Kutta, metode ini adalah suatu metode yang digunakan untuk menyelesaikan persamaan diferensial secara numerik atau pendekatan sehingga mendapatkan penyelesaian yang lebih signifikan daripada penyelesaian secara eksak atau analitik. Metode Runge Kutta merupakan gabungan dari suatu kelas besar metode pendekatan satu langkah (metode Euler, Heun, dan titik tengah). Metode ini mencapai keakuratan dari suatu pendekatan Taylor tanpa memerlukan turunan-turunan tingkat tinggi.

Oldy Fahlovi

56 months ago
Score 1++

Adapun Kelebihan bahasa pemrograman Python itu sendiri dalam menyelesaikan metode Runge-Kutta itu banyak sekali, diantaranya ialah

1. Mudah dipelajari Dibanding bahasa pemrograman lain, Phyton relatif lebih mudah dipelajari. Bahasa ini memiliki sintaks-sintaks yang cukup sederhana dan gampang dimengerti. Bahasa ini sangat dinamis dan dibangun berdasarkan tingkat keterbacaan kode yang tinggi.

2. Mudah diaplikasikan Kelebihan lainnya dari bahasa pemrograman Python adalah kemudahannya dalam diaplikasikan dalam mengembangkan sebuah produk, baik itu situs, software, aplikasi situs, maupun video game.

Selain memiliki keterbacaan kode yang tinggi, sehingga kode mudah dipahami, bahasa pemrograman ini memiliki library yang sangat banyak dan luas. Berbagai macam jenis library ini memuat beragam perlengkapan dan fungsionalitas, sehingga kemudahan membangun program menjadi salah satu yang ditawarkan oleh Phyton.

3. Dukung IoT

Bahasa pemrograman Python mendukung ekosistem Internet of Things (IoT) dengan sangat baik. IoT sedang marak dibicarakan atau bahkan dikembangkan di kalangan maker. Internet of Things merupakan sebuah teknologi yang menghubungkan benda-benda di sekitar kita ke dalam sebuah jaring-jaring yang saling terhubung.

Bahasa ini menjadi sangat populer, lantaran banyak sistem dengan Internet of Things yang menggunakan bahasa ini. Terdapat berbagai macam board yang digunakan menjalankan sistem IoT menggunakan bahasa pemrograman ini sebagai basisnya, termasuk Raspberry Pi.

4. Fleksibel Program yang ditulis menggunakan Python dapat dijalankan di hampir semua sistem operasi (Unix, Windows, Mac OS X, dll.), termasuk untuk perangkat-perangkat selular.

Melalui mekanisme tertenu, kode Python dapat diintegrasikan dengan aplikasi yang ditulis dalam bahasa pemograman lain. Sebagai contoh, kode Python dapat dipanggil dari kode C/C++, dan begitu juga perkembangan .NET Framework.

5. Meningkatkan produktivitas Karena memiliki library yang luas dan desain berorientasi objek yang bersih, penggunaan bahasa pemrograman Python dapat menunjang produktivitas programer dibanding saat menggunakan bahasa pemrograman lain seperti Java dan C++.

6. Free dan open source

Tidak hanya dapat diunduh secara gratis, bahasa Python juga dikembangkan di bawah lisensi open source yang disetujui OSI, yang berarti bahasa pemrograman ini bebas untuk digunakan, dikembangkan dan didistribusikan, termasuk untuk tujuan komersial.

Dieter.rahmadiawan

56 months ago
Score 0++
Pada kasus ini yaitu penyelesaian permasalahan gerak osilasi menggunakan prisnip penyelesaian persamaan diferensial sangat bagus jika memanfaatkan Python sebagai metode untuk mencari solusinya. Python memiliki banyak kelebihan. Dapat ditulis menggunakan Python dapat dijalankan di hampir semua sistem operasi (Unix, Windows, Mac OS X, dll.), termasuk untuk perangkat-perangkat selular. Lalu, bahasa Python juga dikembangkan di bawah lisensi open source yang disetujui OSI, yang berarti bahasa pemrograman ini bebas untuk digunakan, dikembangkan dan didistribusikan, termasuk untuk tujuan komersial.

Oldy Fahlovi

56 months ago
Score 0++
benar, menurut saya juga bahasa python ini juga mudah untuk digunakan dan dipelajari terutama dengan keuntungan-keuntungan yang telah disebutkan serta kelebihannya sebagai bahasa open source yang jarang dimiliki bahasa pemrograman lainnya

Irfan4697

56 months ago
Score 0++

Banyak sekali fitur yang dimiliki Python sehingga menarik digunakan. Berikut fitur-fitur Python yang menjadi keunggulan darinya: 1. Berorientasi kepada objek. 2. Mudah dikembangkan dengan menciptakan modul-modul baru. Modul tersebut juga bisa dibangun dengan bahasa Python. 3. Memiliki tata bahasa yang mudah dipelajari. 4. Didukung sistem pengelolaan memori secara otomatis sehingga membutuhkan kinerja saat coding.

5. Python juga memiliki banyak fasilitas pendukung sehingga ketika mengoperasikannya, terhitung mudah dan cepat.

Irfan4697

56 months ago
Score 0++

Banyak sekali fitur yang dimiliki Python sehingga menarik digunakan. Berikut fitur-fitur Python yang menjadi keunggulan darinya:

1. Berorientasi kepada objek.

2. Mudah dikembangkan dengan menciptakan modul-modul baru. Modul tersebut juga bisa dibangun dengan bahasa Python.

3. Memiliki tata bahasa yang mudah dipelajari.

4. Didukung sistem pengelolaan memori secara otomatis sehingga membutuhkan kinerja saat coding.

5. Python juga memiliki banyak fasilitas pendukung sehingga ketika mengoperasikannya, terhitung mudah dan cepat.

Shbrnf

56 months ago
Score 0++
tetapi library untuk bahasa phyton banyak sekali ya? jadi nampaknya kita juga perlu kemampuan untuk 'mapping' kebutuhan dari bahasa phyton agar aplikasinya tepat guna?

Ahmadzikri.engineer

56 months ago
Score 0++

Sedikit rekomendasi terkait pengaplikasian phython bisa dilihat di sini https://youtu.be/1FYrnwqWQNY

Dalam tutorial video ini, teori Metode Runge-Kutta (RK4) untuk solusi numerik Ordinary Differential Equations (ODE), dibahas dan kemudian diimplementasikan menggunakan MATLAB dan Python dari awal. Sebagai contoh, model Lotka-Volterra yang terkenal (alias. Model Predator-Prey) disimulasikan secara numerik dan diselesaikan menggunakan Runge-Kutta 4th order (RK4), dalam kedua bahasa penyelesaian; Python dan MATLAB.

Setelah menyelesaikan tutorial ini, kita akan belajar:

-Cara mengimplementasikan Runge-Kutta di Python -Bagaimana cara mengimplementasikan Runge-Kutta di MATLAB -Sistem Penyelesaian Persamaan Diferensial Nonlinier

Simulasi Sistem Lotka-Volterra (Predator-Prey)

Oldy Fahlovi

56 months ago
Score 0++
info yang bermanfaat menurut saya, penyampaian video yang diberikan pun cukup menarik sehingga memudahkan kita memahami metode runge-kutta itu sendiri termasuk penyelesaiannya menggunakan matlab dan python

Oldy Fahlovi

56 months ago
Score 0++

4.3.6 Perangkat Lunak untuk Menyelesaikan ODEs

Terdapat banyak metode yang dapat digunakan untuk menyelesaikan ODEs, dan alangkah baiknya kita memilih akses yang mudah untuk mengimplementasikannya ke berbagai metode, terutama metode adaptif yang canggih dan kompleks yang dapat menyesuaikan nilai Δt secara otomatis untuk mendapatkan nilai akurasi yang ditentukan. Phyton Odespy3 merupakan salah satu perangkat yang dapat memberikan akses yang mudah ke berbagai metode numerik untuk menyelesaikan ODEs.

Salah satu contoh termudah dalam penggunaan Odespy adalah untuk menyelesaikan masalah u’ = u, u(0) = 2, untuk 100 time steps sampai t = 4:

import odespy

def f(u, t): return u

method = odespy.Heun #or, e.g., odespy.ForwardEuler solver = method(f) solver.set_initial _condition(2) time_points = np.linspace(0, 4, 101) u. t = solver.solve (time_points)

Dengan kata lain, kalian mendefinisikan sebuah fungsi f(u, t), menginisialisasi sebuah objek penyelesaian Odespy, mengatur kondisi awal, menghitung titik waktu pengumpulan dimana anda menginginkan solusinya, dan bertanya mengenai solusinya. Variabel arrays u dan t dapat dibuat menjadi sebuah grafik secara langsung, yaitu: plot(t,u).

Fitur menarik yang dimiliki oleh Odespy ialah parameter permasalahan dapat menjadi sebuah argumen pada fungsi f(u, t) penggunanya. Sebagai contoh, apabila permasalahan ODE kita adalah u’ = -au + b, dengan 2 parameter yaitu a dan b, kita dapat menuliskan fungsi f kita menjadi

def f(u, t, a, b): return -a*u + b

Sebagai tambahan, permasalahan yang bergantung pada argumen a dan b dapat ditransfer ke fungsi ini bila kita mengumpulkan nilainya dalam sebuah daftar atau tuple ketika membuat sebuah pemecahan Odespy dan menggunakan argumen f_args:

a = 2 b = 1 solver = method(f, f_args=[a, b])

Hal ini merupakan sebuah fitur yang baik karena parameter permasalahan haruslah selain sebagai sebuah variabel global – sekarang dapat menjadi sebuah argument dalam fungsi kita secara alami.

Menggunakan Odespy untuk menyelesaikan osilasi ODEs seperti u” + ω2u = 0, diformulasikan sebagai sebuah sistem u’ = v dan v’ = -ω2u, dilakukan sebagai berikut. Kita tentukan sebuah nilai time steps per periode dan hitung time steps yang diasosiasikan serta waktu akhir simulasi (T), cantumkan sebuah nilai periode untuk disimulasikan:

Import odespy

  1. Define the ODE system
  2. u’ = v
  3. v’ = -omega**2*u

def f(sol, t, omega=2): u, v = sol return [v, -omega**2*u]

  1. Set and compute problem dependent parameters

omega = 2 X_0 = 1 number_of_periods = 40 time_intervals_per_period = 20 from numpy import pi, linspace, cos P = 2*pi/omega #length of one period # length of one period dt = P/time_intervals_per_period # time step T = number_of_periods*P # final simulation time

  1. Create Odespy solver object

odespy_method = odespy.RK2 solver = odespy_method(f, f_args=[omega])

  1. The initial condition for the system is collected in a list

Solver.set_initial_condition([X_0, 0])

  1. Compute the desired time points where we want the solution

N_t = int(round(T/dt)) # no of time intervals Time_points = linspace(0, T, N_t+1)

  1. Solve the ODE problem

sol, t = solver.solve(time_points)

  1. Note: sol contains both displacement and velocity
  2. extract original variables

u = sol[:,0] v = sol[:,1]

Dua pernyataan terakhir menjadi penting karena dua fungsi u dan v di dalam sistem ODE tersebut tergabung bersama dalam sebuah array di dalam pemecahan Odespy. Solusi pada sistem ODE ditunjukan sebagai array 2 dimesi dimana kolom pertama (sol[:,0]) disimpan sebagai u dan kolom kedua (sol[:,1]) disimpan sebagai v. Mengeplot u dan v merupakan sebuah masalah dalam menjalankan plot(t, u, t, v).

Catatan

Di dalam fungsi tersebut kita menuliskan f(sol, t, omega) dibandingkan menulis f (u, t, omega) untuk mengindikasikan bahwa solusi pada f adalah solusi pada waktu t dimana nilai u dan t tergabung bersama: sol = [u,v]. Kita dapat juga menggunakan u sebagai argumen:

def f(u, t, omega=2): u, v = u return [v, -omega**2*u]

Ini hanya berarti kita mendefinisikan ulang nama u pada fungsi tersebut untuk merata-ratakan solusi pada waktu t untuk komponen pertama pada sistem ODE tersebut.

Oldy Fahlovi

56 months ago
Score 0++
Berdasarkan subbab ini dapat diketahui bahwa Odespy merupakan sebuah aplikasi yang sangat baik dalam memecahkan masalah ODE karena selain simpel dan mudah digunakan pada berbagai metode banyak terdapat pula keuntungan lainnya

I Gusti Agung Ayu Desy Wulandari

56 months ago
Score 0++
Odespy berisi metode adaptif yang cukup canggih di mana pengguna "dijamin" untuk mendapatkan solusi dengan akurasi yang ditentukan. Tidak ada jaminan matematis, tetapi error untuk sebagian besar kasus tidak akan menyimpang secara signifikan dari toleransi pengguna yang mencerminkan keakuratan. Metode yang sangat populer dari jenis ini adalah metode Runge-Kutta-Fehlberg, yang menjalankan metode Runge-Kutta orde 4 dan menggunakan metode Runge-Kutta orde 5 untuk memperkirakan error sehingga dapat disesuaikan untuk menjaga error di bawah toleransi. Metode ini juga dikenal luas sebagai ode45, karena itulah nama fungsi yang mengimplementasikan metode ini di Matlab. Kita dapat dengan mudah menguji metode Runge-Kutta-Fehlberg segera setelah kita tahu nama Odespy yang sesuai.

I Gusti Agung Ayu Desy Wulandari

56 months ago
Score 0++
Menurut sumber yang saya dapatkan metode Runge-Kutta-Fehlberg jelas lebih unggul daripada skema Euler-Cromer dalam simulasi yang lama, tetapi perbandingannya tidak terlalu adil karena metode Runge-Kutta_Fehlberg berlaku sekitar dua kali lebih banyak langkah waktu dalam hal perhitungan ini dan melakukan lebih banyak pekerjaan per langkah waktu. Ini adalah tugas yang cukup rumit untuk membandingkan dua metode yang sangat berbeda dalam cara yang wajar sehingga pekerjaan komputasi versus akurasi dilaporkan secara ilmiah dengan baik.

Isyroqialghifari

56 months ago
Score 2++

Variabel pada Python digunakan menyimpan data di dalam memori sehingga dapat digunakan untuk melakukan suatu proses komputasi. Pada tutorial ini dijelaskan cara membuat variabel dalam Python menggunakan tipe data numerik.

A. Pengertian Variabel pada Python Variabel pada Python adalah set memory yang digunakan untuk menyimpan data yang bersifat dinamis. Dinamis berarti nilai data yang disimpan dalam suatu variabel dapat berubah, baik dilakukan oleh pengguna maupun secara komputasi. Variabel pada Python dapat menyimpan berbagai jenis tipe data. Variabel bahasa pemrograman Python harus diberi nama untuk diproses.

Baca juga: Operasi Logika pada Python

Aturan Penulisan Variabel Harus dimulai dengan huruf atau underscore, misalnya: a, _a, nilai, _n Tidak boleh dimulai oleh angka Panjang nama maksimum adalah 256 karakter Dapat memuat angka, huruf, underscore, dollar, dan lain-lain Tidak boleh berisi spasi Tidak boleh memuat simbol matematika, misalnya: +, –, /, (, ) Tidak boleh sama dengan fungsi Python standar Nama variabel Python yang tidak dapat digunakan and as assert break class continue def del elif else except exec if import in is lambda not or pass print raise return try while yield True False None

B. Tipe Data Numerik Python Terdapat 3 tipe data numerik Python yaitu integer, float, dan complex. Tipe Data Integer pada Python Integer adalah tipe data numerik berupa bilangan bulat …-,3,-2,-1,0,1,2,3,…

Tipe Data Float pada Python Float adalah tipe data numerik berupa bilangan desimal. Pemisah desimal pada bahasa pemrograman Python menggunakan tanda titik (.)

Tipe Data Complex pada Python

Complex adalah tipe data numerik berupa bilangan kompleks yaitu bilangan imajiner. Bilangan imajiner dalam ilmu matematika adalah bilangan yang diformulasikan dengan j² = -1, dengan j adalah bilangan imajiner. Untuk mendefinisikan variabel berupa nilai imajiner dapat menggunakan karakter j.

Isyroqialghifari

56 months ago
Score 1++

Ibwiranto

56 months ago
Score 0++
informasi yang sangat bermanfaat dari penjelasan saudara isyroqi alghifari terkait variabel pada python. dari penjelasan tersebut diketahui bahwa variabel adalah set memory yang digunakan untuk menyimpan data yang bersifat dinamis. terdapat 3 Tipe Data Numerik Python yaitu integer, float dan complex.

Ibwiranto

56 months ago
Score 0++

Operator logika pada Python merupakan operator yang digunakan untuk melakukan komputasi boolean, salah satu tipe data pada bahasa pemrograman Python. Sama halnya seperti bahasa pemrograman lainnya, operator logika Python merupakan aplikasi dari disiplin ilmu matematika modern.

A. Pengertian Operator Logika pada Python Operator logika pada python adalah operasi logika matematika untuk melakukan operasi komputasi dari data boolean, yang terdiri dari True dan False. True bernilai benar dan False bernilai salah.

B. Operasi Matematika pada Operasi Logika Python Berikut beberapa operasi matematika yang erat kaitannya dengan operasi logika < (Lebih Kecil Dari), <= (lebih kecil atau sama dengan), > ( Lebih Besar dari), >= (Lebih besar atau sama dengan), == (sama dengan), dan != (tidak Sama dengan).

C. Menggunakan Jenis Operator Logika pada Python Terdapat 4 operator logika yang dapat digunakan pada bahasa pemrograman Python.

Operator AND Operator AND pada python dapat dilakukan menggunakan function and() atau &. Nilai kebenaran operator AND adalah benar ketika kedua operand bernilai benar. Operand adalah nilai yang digunakan pada operator logika. Berikut tabel kebenaran operator AND.

Operator OR Operator OR pada python dapat dilakukan menggunakan fungsi or() atau |. Operator OR mempunyai nilai kebenaran salah saat kedua operand bernilai salah. Berikut tabel kebenaran operator logika OR.

Operator XOR Operator XOR pada Python adalah operasi logika dari OR Eksklusif. Dalam aljabar boolean, Operasi XOR mempunyai definisi setiap tapi tidak semua. Operator XOR memberikan nilai kebenaran benar (1) saat jumlah operand adalah ganjil.

Operator NOT

Operator NOT pada Python berarti negasi dari dari operand yang dimuat.

Isyroqialghifari

56 months ago
Score 0++
Bagus sekali ilmu yang disampaikan oleh saudara bagus. membahas tentang operator yang berlaku pada pemograman python. Ini menarik, karena kita dapat mengetahui seperti operasi matematika dan operasi. Dan ada beberapa operator python yang dapat kita ketahui dari penjelasan diatas. Maka penjelasan diatas cukup menambah ilmu untuk masyarakat khususnya para pembaca yang notabene ingin menambah ilmunya dalam dunia perpythonan.

Mohamad Wafirul Hadi

56 months ago
Score 0++

4.3.9 Ilustrasi redaman linier

Kami menganggap sistem rekayasa dengan pegas linier, s (u) = kx, dan peredam kental, di mana gaya peredaman adalah porpotional terhadap u ', f (u') = bu ', untuk beberapa konstanta b> 0. Pilihan ini dapat memodelkan sistem pegas vertikal di dalam mobil. kita dapat memilih nilai-nilai sederhana untuk konstanta untuk mengilustrasikan efek dasar redaman (dan kegembiraan selanjutnya). Memilih osilasi sebagai fungsi u (t) = cos t sederhana dalam kasus undamped, kita dapat menetapkan m = 1, k = 1, b = 0,3, Uo = 1, Vo = 0.

type python ada 2 yang masih aktif dari yang saya baca. Ada perubahan besar pada syntax Python versi 3.x, maka program yang di buat dengan Python 2.x tidak akan berjalan normal pada Python versi 3.x, masalah seperti ini sudah biasa dalam dunia pemrograman, dan sering di sebut “compatibility problems”. Untuk menghadapi masalah tersebut, para developer Python memberikan waktu kepada para programmer yang ‘kaget’ untuk memporting codenya ke Python 3.x dengan cara ‘masih’ memberikan support ke Python 2.x. Saat ini, status Python 2.x adalah Legacy yang artinya hanya di support seperlunya dan tidak ada pembaruan fitur terbaru.

Testing adalah proses untuk memastikan bahwa kode yang ditulis sudah beralan dengan seharusnya. Tujuan ini dapat dicapai dengan berbagai cara mulai dari secara manual memasukkan beberapa nilai dan memastikan hasil yang didapat sudah benar, hingga membuat serangkaian tes terstruktur yang berjalan secara otomatis dan memastikan bahwa kesuluruhan program sudah berjalan dengan seharusnya.

Satu bentuk testing yang paling umum adalah unit testing. Teknik ini dilakukan dengan cara melakukan pengecekan satu blok kode (biasanya sebuah fungsi) dan memastikan bahwa blok tersebut sudah berjalan dengan benar. Sebagai contoh, berikut ini kode Python yang akan mencetak kode tahun dalam bentuk angka Romawi:

symbols = [('M', 1000), ('C M', 900), ('D', 500), ('C D', 400), ('C', 100), ('X C', 90), ('L', 50), ('X L', 40), ('X', 10), ('I X', 9), ('V', 5), ('I V', 4), ('I', 1)]

def romannumeral(number): while number > 0: for symbol, value in symbols: if number - value >= 0: print symbol, number = number - value continue

number_in = raw_input("Enter a number: ") romannumeral(int(number_in)) Kode di atas cukup sulit untuk dilakukan testing karena fungsi yang sama melakukan dua pekerjaan yaitu menghitung nilai dan mencetaknya. Artinya tidak ada tempat untuk menangkap dan menguji nilai Romawi yang dihasilkan sebelum dikirim ke terminal.

Langkah pertama yang harus dilakukan adalah me-refactor kode di atas sehingga fungsi romannumeral() hanya mengembalikan nilai Romawinya tanpa mencetak. Berikut fungsi yang telah diperbarui:

def romannumeral(number): outstring = "" while number > 0: for symbol, value in symbols: if number - value >= 0: outstring += symbol number = number - value continue return outstring

Kode di atas menghapus spasi diantara dua simbol, jadi kita juga menghapus spasi yang ada di tupple yang ada dalam list symbols.

Adinda

56 months ago
Score 0++

Python merupakan bahasa pemrograman tingkat tinggi yang diracik oleh Guido van Rossum. Python banyak digunakan untuk membuat berbagai macam program, seperti: program CLI, Program GUI (desktop), Aplikasi Mobile, Web, IoT, Game, Program untuk Hacking, dsb. Python juga dikenal dengan bahasa pemrograman yang mudah dipelajari, karena struktur sintaknya rapi dan mudah dipahami.

Apa saja alat-alat yang harus dipersiapkan untuk belajar pemrograman python? 1. Python: Interpreter yang menerjemahkan bahasa python ke bahasa mesin, sehingga program bisa dijalankan. 2. Teks Editor/IDE: Program yang digunakan untuk menulis kode.

Fitur Python Banyak sekali fitur yang dimiliki Python sehingga menarik digunakan. Berikut fitur-fitur Python yang menjadi keunggulan darinya: - Berorientasi kepada objek. - Mudah dikembangkan dengan menciptakan modul-modul baru. Modul tersebut juga bisa dibangun dengan bahasa Python. - Memiliki tata bahasa yang mudah dipelajari. - Didukung sistem pengelolaan memori secara otomatis sehingga membutuhkan kinerja saat coding.

- Python juga memiliki banyak fasilitas pendukung sehingga ketika mengoperasikannya, terhitung mudah dan cepat.

Danielmeino

56 months ago
Score 0++
Didalam bahasa python familiar dengan software anaconda, didalam anaconda ada jupy dan pycharm. Yang cocok untuk permasalahan oscillator lebih cocok yang mana yah?

Isyroqialghifari

56 months ago
Score 0++
bahasan yang bagus dari saudara daniel. pycharm juga dapat digunakan dengan baik. menurut yang saya tonton di beberapa sumber, menggunakan pycharm sebagai penggerak python. Mungkin masih ada pendapat yang lain tentang bahasa python yg lainnya. Menurut saya semuanya baik untuk pemograman. Hanya saja tinggal kebiasaan dari tiap tiap individu dalam menggunakan bahasa pemograman.

Muchaliszm

56 months ago
Score 0++

Ingin mencoba menjawab mas, kalo ditanya cocokan mana yang digunakan untuk soal oscilatingsaya rasa lebih ke pycharm, dikarenakan dari beberapa sumber yang saya baca pycharm memiliki beberapa fitur seperti 1. Bantuan pengkodean dan analisis, dengan penyelesaian kode, penyorotan sintaksis dan kesalahan, integrasi linter, dan perbaikan cepat 2. Navigasi proyek dan kode: tampilan proyek khusus, tampilan struktur file, dan lompatan cepat antara file, kelas, metode, dan penggunaan 3. Python refactoring: termasuk mengganti nama, mengekstrak metode, memperkenalkan variabel, memperkenalkan konstan, menarik ke atas, menekan ke bawah dan lainnya.

Sedangkan Jupyter, dari beberapa sumber yang saya dapat, fungsi dari jupyter sendiri lebih ke web terbuka untuk orang-orang saling membagikan kodingan, file dan lain-lain.

mungkin jika saya ada salah informasi mohon dikoreksi ya

Danielmeino

56 months ago
Score 0++
baik terima kasih, saya coba gali lebih lagi kedepannya

Kaniadyah

56 months ago
Score 0++

kalau saya pribadi lebih suka pycharm, karena interfcenya mudah dimengerti dan penggunaanya mudah, namun kekurangannya ada beberapa feature pycharm yang hanya ada di proffesional edition yg tidak open source

sedangkan jupyter disisi lain adalah open source, jadi ada feature-feature khusus di pycharm pro ada di jupyter

jadi kembali lagi ke prefrensi masing-masing

Danielmeino

56 months ago
Score 0++
Didalam bahasa python familiar dengan software anaconda, didalam anaconda ada jupy dan pycharm. Yang cocok untuk permasalahan oscillator lebih cocok yang mana yah?

Evielisa

56 months ago
Score 0++

Anaconda adalah paket distribusi Python dari Continuum Analytics yang berisi paket Python ditambah beberapa paket tambahan untuk keperluan pemrograman data science, matematika hingga teknik dalam satu distribusi platform yang user friendly.

Pada Anaconda juga disertakan conda. Conda adalah package management system dan environment management system yang akan memudahkan pemasangan package dan mengelolanya. Ini open source dan dapat bekerja di Linux, OS X dan Windows. Tadinya ini dibuat untuk membuat package untuk Python, sekarang ia bisa melakukan itu untuk software lainnya.

Danielmeino

56 months ago
Score 0++
Kemungkinan untuk melakukan perhitungan masih bisa ya ?

Evielisa

56 months ago
Score 0++
Bisa...

Anonymous user #1

56 months ago
Score 0 You
Selain python, bahasa pemprograman lainnya yang juga populer di Indonesia adalah Jasacript. JavaScript adalah bahasa pemrograman yang dikembangkan oleh Netscape. Penggunaan JavaScript saat ini kebanyakan terdapat pada pengembangan web. Dengan JavaScript ini kita bisa membuat web yang interaktif dan menarik.

S.ichwan

56 months ago
Score 0++
banyak bahasa pemprograman didunia ini, pilihan bergantung pada preferensi pribadi masing2, tergantung kebiasaan dan kenyamanannya, krn terkadang suatu program dianggap powerfull bagi sebagian besar orang, namun tidak begitu bagitu bagi sebagian kecil lainnya.

Evielisa

56 months ago
Score 0++
Selain python, bahasa pemprograman lainnya yang juga populer di Indonesia adalah Jasacript. JavaScript adalah bahasa pemrograman yang dikembangkan oleh Netscape. Penggunaan JavaScript saat ini kebanyakan terdapat pada pengembangan web. Dengan JavaScript ini kita bisa membuat web yang interaktif dan menarik

Surya94aji

56 months ago
Score 0++
Apa perbedaannya dengan bahasa pemrograman Phyton dengan Javascript? dan juga apa pertimbangan penggunaan didalamnya, terutama dari segi kemudahan dan kegunaan aplikasi pemrograman ini?

Isyroqialghifari

56 months ago
Score 1++

Beberapa perbandingan python dan javascript

Mana Yang Lebih Sederhana?

Pertanyaan ini mungkin agak sulit untuk dijawab, tapi jika anda sudah pernah menggunakan kedua bahasa pemrograman ini, maka jawabannya akan sangat mudah. Biarpun Python dan Javascript kurang lebih sama dalam kompleksitas mereka (atau dalam kesederhanaan mereka), bahasa Python masih lebih sederhana jika dibandingkan dengan Javascript. Python adalah salah satu bahasa pemrograman paling sederhana karena alasan kesederhanaan itu sendiri. Menurut berbagai macam review Python vs Javascript, anda akan mendapatkan kesimpulan yang sama bahwa belajar Python membutuhkan usaha yang lebih sedikit dibandingkan dengan belajar Javascript (biarpun bahasa Javascript sendiri tidak terlalu “sulit” untuk dipelajari).

Yang Mana Yang Lebih Populer?

Saya akan membahas beberapa aspek popularitas. Seperti yang mungkin telah anda asumsikan, kedua bahasa pemrograman ini juga memiliki popularitas yang kurang lebih serupa. Biarpun begitu, sepertinya bahasa Python akan menjadi semakin lebih populer seiring berjalannya waktu. Tampilan sederhana dan support komunitasnya telah menembus batas mainstream. Hingga saat ini, Python telah menjadi salah satu bahasa pemrograman yang paling didiskusikan dan direferensikan di seluruh dunia!

Kesimpulan

Seperti yang sudah anda perhatikan sendiri, sebenarnya sangat sulit untuk dapat menentukan pemenang yang pasti dalam perdebatan Python vs Javascript ini. Bahasa Python sendiri sepertinya terlihat lebih populer dan lebih mudah untuk dipelajari, hanya saja Javascript juga memiliki kelebihannya sendiri dalam area spesifik tertentu. Itu berarti, semuanya akan menjadi bergantung pada preferensi pribadi anda. Apa yang menjadi alasan anda untuk akhirnya memilih salah satu dari bahasa pemrograman ini. Dan tergantung dari setiap individu dalam penggunaannya.

Sumber : https://id.b...-javascript/

Isyroqialghifari

56 months ago
Score 1++
mungkin cuma itu yg bisa saya berikan jawaban pertanyaan saudara aji suryadi kepada saudari evi. Karena keterbatasan ilmu saya dalam pemograman ini. Mungkin ada jawaban, kritik atau saran yang lebih baik dalam jawaban saudara aji dapat dijawab dari teman teman yang lain

S.ichwan

56 months ago
Score 0++
Salah satu fitur yang juga membuat bahasa Python menjadi terkenal adalah sifat fleksibilitasnya. Python adalah salah satu bahasa pemrograman paling fleksibel yang pernah ada! Fleksibilitas ini membuat Python dapat digunakan untuk berbagai macam situasi, mulai dari pembuatan aplikasi website dan desktop, serta data mining, dsb.

Muhammadiqbalk

56 months ago
Score 0++

Sebenarnya ada lagi yang di gunakan untuk pemrograman selain yang Saudari Evi Elisa jelaskan yaitu Fortran dan Turbo Pascal

Namun pada kesempatan kali ini, saya akan membantu menjelaskan mengenai Fortran

Kelebihan Bahasa Pemrograman FORTRAN adalah sebagai berikut :

· FORTRAN bisa menangani ekspresi matemática dan logika yang kompleks. Pernyataanya cukup pendek dan sederhana.

· Program FORTRAN yang dikembangkan pada satu tipe komputer bisa dengan mudah dimodifikasi agar bisa bekerja pada tipe yang lain.

Kekurangan Bahasa Pemrograman FORTRAN adalah sebagai berikut :

· FORTRAN tidak menangani operasi input dan output pada peralatan penyimpanan seefisien bahasa lain yang levelnya lebih tinggi

· Memiliki keterbatasan untuk mengekspresikan dan memproses data nonnumerik

· Tidak bisa dibaca atau dipahami semudah bahasa level tinggi yang Terdapat beberapa hal yang menjadikan bahasa pemrograman Fortran lebih unggul dibandingkan dengan bahasa pemrograman lain yaitu,

1. proses eksekusi / kompilasi program yang cukup cepat.

2. metode penulisan program sangat fleksibel, setiap bagian blok program dapat ditulis secara tidak berurutan.

3. mendukung teknik kompilasi secara menyeluruh (all compilation), maksudnya misalkan kita memiliki 5 buah file Fortran yang saling berhubungan maka semua file tersebut dapat langsung dikompilasi semua dalam satu perintah dengan bantuan makefile yang kita buat.

4. memilki kompilator (compiler) yang cukup banyak berkembang.

sumber : "Bahasa Pemrograman : FORTRAN"

Isyroqialghifari

56 months ago
Score 0++
betul apa yang dikatakan sahabat iqbal, bahwa ada bahasa pemograman seperti fortran dan turbo pascal. Dimana keduanya juga masuk dalam keluarga bahasa pemograman. Mungkin pada zaman dahulu pythonnya masih berterlur dan belum familiar, maka digunakan fortran dan turbo pascal dalam bahasa pemograman

AliWiki

56 months ago
Score 0++

Python adalah bahasa pemrograman interpretatif multiguna. Tidak seperti bahasa lain yang susah untuk dibaca dan dipahami, python lebih menekankan pada keterbacaan kode agar lebih mudah untuk memahami sintaks. Hal ini membuat Python sangat mudah dipelajari baik untuk pemula maupun untuk yang sudah menguasai bahasa pemrograman lain. Bahasa ini muncul pertama kali pada tahun 1991, dirancang oleh seorang bernama Guido van Rossum. Sampai saat ini Python masih dikembangkan oleh Python Software Foundation. Bahasa Python mendukung hampir semua sistem operasi, bahkan untuk sistem operasi Linux, hampir semua distronya sudah menyertakan Python di dalamnya. Dengan kode yang simpel dan mudah diimplementasikan, seorang programmer dapat lebih mengutamakan pengembangan aplikasi yang dibuat, bukan malah sibuk mencari syntax error. Contoh: print("Python sangat simpel")

Hanya dengan menuliskan kode print seperti yang diatas, sudah bisa mencetak apapun yang anda inginkan di dalam tanda kurung (). Dibagian akhir kode pun, tidak harus mengakhirnya dengan tanda semicolon ;

S.ichwan

56 months ago
Score 0++

Salah satu fitur yang juga membuat bahasa Python menjadi terkenal adalah sifat fleksibilitasnya. Python adalah salah satu bahasa pemrograman paling fleksibel yang pernah ada! Fleksibilitas ini membuat Python dapat digunakan untuk berbagai macam situasi.

Namun jika kita bicara soal bahasa komputer yang populer, maka pilihan tersebut semuanya tergantung pada preferensi dan ekspektasi pribadi kita masing-masing.

Harrypurnama

56 months ago
Score 0++
Menurut saya bahasa pemrograman R juga bagus, karena pada awalnya kalau tidak salah R dikembankan untuk pendidikan dan R&D.

Muhammadiqbalk

56 months ago
Score 0++

Meneruskan penjelasan yang dilakukan oleh saudara Adhika Satyadharma bahwasannya masalah dalam kasus ini adalah sebuah persamaan diferensial orde 2 yang ingin diselesaikan secara numerik. Saya menemukan sebuah jawaban dari Jurnal yang dilakukan oleh Sagita Charolina Sihombing dengan judul "Penyelesaian Persamaan Diferensial Linier Orde Satu dan Dua disertai Nilai Awal dengan menggunakan Metode Runge Kutta Orde Lima Butcher dan Felhberg (RKF45)"

Metode ini dianggap efisien dan akurat untuk penyelesaian masalah tersebut dikarenakan nilai penyelesaian untuk kedua metode tersebut memberikan error yang relative sangat kecil terhadap solusi analitik.

Metode Runge-Kutta adalah alternatif lain dari metode-metode numerik lainnya yang tidak membutuhkan perhitungan turunan. Metode ini berusaha mendapatkan derajat ketelitian yang lebih tinggi, dan sekaligus menghindarkan keperluan mencari turunan yang lebih tinggi.

Metode runge kutta memiliki beberapa orde, salah satunya adalah metode runge kutta orde lima. Metode Runge Kutta orde lima merupakan metode runge kutta yang memiliki enam evaluasi fungsi dan dapat mencapai ketelitian yang akurat dengan menghasilkan nilai hampiran yang mendekati nilai penyelesaian analitik. Rumus umum metode Runge Kutta orde lima sebagai berikut

[1]: yi+1 - yi + Σ6j = 1 b j k j

dengan j = 1,2,...,6;bj adalah konstanta dan kj merupakan evaluasi fungsi yang diperoleh dari:

kj = ∆x.f(xi + cm∆x,yi + am1k1 + am2k2 +···+ ammkm)

∆x adalah suatu ukuran langkah yang dinyatakan dengan ∆x = xi+1 − xi, sedangkan cm dan amr adalah konstanta dengan cm = Σm r=0amr;m = j −1,c0 = 0 dan am0 = 0.

Metode runge kutta orde lima ini terdiri dari metode Runge Kutta Butcher dan metode Runge Kutta Fehlberg (RKF45).

sumber : Jurnal "Penyelesaian Persamaan Diferensial Linier Orde Satu dan Dua disertai Nilai Awal dengan menggunakan Metode Runge Kutta Orde Lima Butcher dan Felhberg (RKF45)"

Harrypurnama

56 months ago
Score 1++

Runge-Kutta orde 4 merupakan metode yang paling populer dalam penyelesaian persamaan diferensial. Metode ini dapat memperoleh akurasi deret Taylor tanpa memerlukan diferensiasi orde yang lebih tinggi. Metode Runge-Kutta orde 4 dituliskan ke dalam Persamaan (10.6).

yi+1=yi+16(k1+2k2+2k3+k4)h(10.6)

dimana

k1=f(xi,yi)(10.7)

k2=f(xi+12h,yi+12k1h)(10.8)

k3=f(xi+12h,yi+12k2h)(10.9)

k4=f(xi+h,yi+k3h)(10.10)

Algoritma Metode Tengah

Tentukan titik awal integrasi x0

dan y0 . Tentukan jumlah iterasi n dan step size h

yang digunakan. Lakukan integrasi menggunakan Persamaan (10.6).

Berdasarkan algoritma tersebut, kita dapat membangun sebuah fungsi pada R yang adapat digunakan untuk menyelesaikan persamaan diferensial menggunakan metode Runge-Kutta orde 4. Berikut adalah sintaks yang digunakan:

rk4 <- function(f, x0, y0, h, n){ x <- x0 y <- y0

for(i in 1:n){ k1 <- f(x0,y0) k2 <- f(x0+0.5*h,y0+0.5*k1*h) k3 <- f(x0+0.5*h,y0+0.5*k2*h) k4 <- f(x0+h,y0+k3*h) y0 <- y0 + (1/6)*(k1+2*k2+2*k3+k4)*h x0 <- x0 + h x <- c(x, x0) y <- c(y, y0) }

return(data.frame(x=x,y=y)) }

Contoh. Selesaikan persamaan diferensial di bawah ini, jika diketahui f(0)=1 menggunakan h=0,05 dan n=100!

f′(x,y)=y2x+1

Jawab: menggunakan metode Runge-Kutta orde 4!

Jawab:

Contoh perhitungan secara manual menggunakan metode titik tengah untuk sekali iterasi adalah sebagai berikut:

k1=1(2⋅0)+1=1

k2=1+12⋅1⋅0,05(2⋅0⋅12⋅0,05)+1=1,025

k2=1+12⋅1,025⋅0,05(2⋅0⋅12⋅0,05)+1=1,025625

k2=1+1,025625⋅0,05(2⋅0⋅0,05)+1=1,051281

y1=1+16(1+2⋅1,025+2⋅1,025625+1,051281)0,05=1.051271

1+(1/6)*(1+2*1.025+2*1.025625+1.051281)*0.05

    1. [1] 1.051

Iterasi dapat pula dilakukan dengan menggunakan fungsi rk4(). Berikut adalah sintaks yang digunakan:

num <- rk4(f1, x0=0, y0=1, h=0.05, n=100)

Visualisasi integrasi numerik dengan metode Runge-Kutta orde 4 dan metode analitik

Runge-kuta orde 4.hrrypn.JPG

Gambar: Visualisasi integrasi numerik dengan metode Runge-Kutta orde 4 dan metode analitik

Sumber: https://bookdown.org/

Afitro Adam Nugraha

56 months ago
Score 0++
bagus sekali penjelasan dari saudara iqbal dan saudara harry dalam menjelaskan terkait metode runge kutta. Dapat diketahui bahwa ada beberapa jenis dalam metode runge kutta. Seperti saudara saudara saya jelaskan diatas, ada beberapa jenisnya yaitu runge kutta orde 4 dan runge kutta orde 5. yang dimana keduanya sangat baik dalam menyelesaikan masalah numerik karena mendapatkan error yang cukup kecil.

Muhammadiqbalk

56 months ago
Score 0++

Betul saudara Adam, dalam video ini bisa dilihat bahwa penulis dalam mengerjakan suatu kasus Metode Runge-Kuta mendapatkan nilai error yang sangat kecil tanpa harus menghitung turunan

video berikut dapat disimak dengan baik untuk pembelajaran dalam langkah-langkah dalam menyelesaikan satu kasus numerik

[1]

I Gusti Agung Ayu Desy Wulandari

56 months ago
Score 0++

Pada bagian sub-bab 4.3.6 telah diuraikan sedikit mengenai metode Runge-Kutta.

Dari sumber lain yang saya dapatkan, maka disini saya akan sedikit mengulas secara umum / mendasar sehingga diharapkan lebih mudah dimengerti oleh teman-teman mengenai apa itu metode Runge-Kutta secara umum, melihat pada komentar-komentar diatas oleh saudara Edo, Zikri, Oldy, dan juga Iqbal serta saudara Harry yang telah menguraikan mengenai Runge-Kutta orde 5 dan 4.

Metode Runge-Kutta merupakan alternatif lain dari metode deret taylor yang tidak membutuhkan perhitungan diferensial. Metode ini berusaha mendapatkan derajat ketelitian lebih tinggi, namun dengan cara yang lebih sederhana. Metode Runge-Kutta memiliki 3 sifat utama antara lain:

1. metodenya satu langkah: untuk mencapai y(m+1) hanya diperlukan keterangan yang tersedia pada titik sebelumnya yaitu x(m), y(m)

2. mendekati ketelitian deret taylor sampai suku dalam h^p (dibaca h pangkat p), dimana nilai p berbeda untuk metode yang berbeda, dan p ini disebut derajat dari metode

3. tidak memerlukan perhitungan turunan f(x,y), tetapi hanya memerlukan fungsi itu sendiri.

Secara umum metode Runge-Kutta orde n dituliskan sebagai berikut:

y(n+1) = y(n) + b(1)k(1) + b(2)k(2) + . . . + b(n)k(i)

Afitro Adam Nugraha

56 months ago
Score 0++

menambahkan sedikit untuk melanjutkan saudara mas harry yaitu: Dalam skema penyelesaiannya, metode Runge-Kuta dibagi menjadi dua, yaitu skema eksplisit dan skema implisit. Pada umumnya, metode Runge-Kutta yang berkembang hingga saat ini merupakan metode Runge-Kutta dengan skema eksplisit, namun ada beberapa permasalahan yang tidak bisa diselesaikan secara eksplisit. Hal tersebut mengakibatkan adanya pengembangan metode Runge-Kutta secara implisit. Runge-Kutta dengan skema implisit digunakan dalam mencari solusi numerik sistem persamaan diferensial yang berifat kaku (stiff equation). Selain dari kegunaanya, perbedaan Runge-Kutta implisit dan eksplisit yaitu jika pada Runge- Kutta ekplisit setiap tahap terurut (𝑘𝑖) hanya bergantung pada nilai 𝑘𝑖 sebelumnya, misalnya untuk mendapatkan nilai 𝑘2 maka harus dicari nilai 𝑘1 terlebih dahulu. Sedangkan untuk Runge-Kutta implisit pada setiap tahap terurut (𝑘𝑖) itu setidaknya ada satu tahap yang bergantung pada dirinya sendiri atau pada satu tahap selanjutnya (Engwer, 2018). Rumus Runge- Kutta secara eksplisit dapat dilihat pada persamaan (2.5) dan (2.6), yang mana dapat diartikan bahwa rumus Runge- Kutta secara eksplisit merupakan rumus umum dari metode Runge- Kutta itu sendiri. Berbeda dengan skema secara eksplisit, rumus Runge- Kutta secara implisit berdasarkan pernyataan sebelumnya dapat dituliskan sebagai berikut (Engwer, 2018): Dengan 𝑡𝑛 = 𝑡0 + 𝑛. ∆𝑡 → ∆𝑡 = ℎ dan 𝑦𝑛 = 𝑦(𝑡𝑛)

𝑠 𝑦𝑛+1 = 𝑦𝑛 + ℎ ∑ 𝑏𝑖𝑘𝑖 𝑗=1

𝑘1 = 𝑓(𝑡𝑛 + 𝑐1ℎ, 𝑦𝑛 + ℎ(𝑎11𝑘1 + 𝑎12𝑘2 + ⋯ + 𝑎1𝑠𝑘𝑠)) 𝑘2 = 𝑓(𝑡𝑛 + 𝑐2ℎ, 𝑦𝑛 + ℎ(𝑎21𝑘1 + 𝑎22𝑘2 + ⋯ + 𝑎2𝑠𝑘𝑠)) 𝑘3 = 𝑓(𝑡𝑛 + 𝑐3ℎ, 𝑦𝑛 + ℎ(𝑎31𝑘1 + 𝑎32𝑘2 + ⋯ + 𝑎3𝑠𝑘𝑠)) 𝑘𝑖 = 𝑓(𝑡𝑛 + 𝑐𝑖ℎ, 𝑦𝑛 + ℎ(𝑎𝑖1𝑘1 + 𝑎𝑖2𝑘2 + ⋯ + 𝑎𝑖𝑠𝑘𝑠))

Setelah nilai 𝑘𝑖 diketahui, maka nilai 𝑦𝑛+1 dapat ditentukan. Namun, karena pada setiap langkah 𝑘𝑖 mengandung langkahnya sendiri dan satu langkah selanjutnya, maka untuk mendapatkan nilai 𝑦𝑛+1 dibutuhkan perhitungan yang cukup rumit dan juga ketelitian yang tinggi.

Adinda

56 months ago
Score 0++

Ilmu yang cukup bermanfaat mengenai metode Runge-Kutta yang telah disampaikan oleh saudara Adam, Desy, Harry, Zikri, Edo, Oldy serta teman-teman lainnya.

Yang ingin saya tanyakan disini adalah apakah ada metode numerik lainnya yang bisa digunakan untuk menyelesaikan persamaan differensial selain metode Range-Kutta? Apakah ada perbedaan signifikan apabila kita menggunakan metode lain? Jawaban teman-teman akan membantu saya dalam memahami ilmu mengenai bahasa pemrograman. Terima kasih

Adinda

56 months ago
Score 0++
mohon maaf maksud saya adalah metode Runge-Kutta

Fadhli Ihsan

56 months ago
Score 0++

Terdapat beberapa metode yang dapat digunakan untuk menyelesaikan permasalahan diferensial dimana salah satunya yaitu metode Runge-Kuta. beberapa metode yang dapat digunakan untuk menyelesaikan persamaan diferensial yaitu:

A. Metode Euler

Metode Euler merupakan metode paling sederhana yang diturunkan dari deret Taylor. Penyelesaian initial value problems menggunakan metode Euler dilakukan melalui Persamaan (1).

yi+1=yi+f(xi,yi)h (1)


dimana i merupakan tahapan iterasi.

Algoritma Metode Euler

1. Tentukan titik awal integrasi x0 dan y0. 2. Tentukan jumlah iterasi n dan step size h yang digunakan. 3. Lakukan integrasi menggunakan Persamaan (2).


B. Metode Heun

Metode Heun merupakan salah satu peningkatan dari metode Euler. Metode ini melibatkan 2 buah persamaan. Persamaan pertama disebut sebagai persamaan prediktor yang digunakan untuk memprediksi nilai integrasi awal (Persamaan (10.2)). Persamaan kedua disebut sebagai persamaan korektor yang mengoreksi hasil integrasi awal (Persamaan (3)). Metode Heun pada Chapter ini merupakan metode prediktor-korektor satu tahapan. Akurasi integrasi dapat ditingkatkan dengan melakukan koreksi ulang terhadap nilai koreksi semula menggunakan persamaan kedua.

y0i+1=yi+f(xi,yi)h (2)


yi+1=yi+f(xi,yi)+f(xi+1,y0i+1)2h (3)


Algoritma Metode Heun

1. Tentukan titik awal integrasi x0 dan y0 . 2. Tentukan jumlah iterasi n dan step size h yang digunakan. 3. Lakukan prediksi nilai awal dengan Persamaan (2). 4. Lakukan koreksi nilai awal menggunakan Persamaan (3). 5. Lakukan koreksi terhadap nilai koreksi yang dihasilkan sebelumnya menggunakan Persamaan (3).


C. Metode Titik Tengah

Metode titik tengah menggunakan setengah step size pada metode Euler untuk melakukan estimasi terhadap integral suatu persamaan diferensial. Metode ini melakukan perhitungan melalui dua tahapan yaitu: menghitung nilai estimasi integral pada setengah step size(Persamaan (4)) dan menghitung nilai integral menggunkan hasil perhitungan setengah step size sebelumnya (Persamaan (5)).

yi+12=yi+f(xi,yi)h2 (4)


yi+1=yi+f(xi+12,yi,12)h (5)


Algoritma Metode Tengah

1. Tentukan titik awal integrasi x0 dan y0 . 2. Tentukan jumlah iterasi n dan step size h yang digunakan. 3. Lakukan integrasi pada setengah tahapan iterasi menggunakan Persamaan (4). 4. Lakukan iterasi pada setengah tahapan selanjutnya menggunakan Persamaan (5).


D. Metode Runge-Kutta Orde 4

Runge-Kutta orde 4 merupakan metode yang paling populer dalam penyelesaian persamaan diferensial. Metode ini dapat memperoleh akurasi deret Taylor tanpa memerlukan diferensiasi orde yang lebih tinggi. Metode Runge-Kutta orde 4 dituliskan ke dalam Persamaan (6).

yi+1=yi+16(k1+2k2+2k3+k4)h (6)


di mana

k1=f(xi,yi) (7)


k2=f(xi+12h,yi+12k1h) (8)


k3=f(xi+12h,yi+12k2h) (9)


k4=f(xi+h,yi+k3h) (10)


Algoritma Metode Runge-Kutta Orde 4

1. Tentukan titik awal integrasi x0 dan y0 . 2. Tentukan jumlah iterasi n dan step size h yang digunakan. 3. Lakukan integrasi menggunakan Persamaan (6).


E. Metode Multistep Linier

Jika metode Runge-Kutta mengalami kesulitan karena terlalu banyak evaluasi fungsi yang digunakan, masuk akal untuk bertanya apakah kita dapat menggunakan kembali beberapa evaluasi fungsi sebelumnya, yang sudah kita buat. Sebagai contoh, kita ingin tahu apakah kita dapat menggunakan kembali estimasi f(0,1) dan f(0,2) untuk memperkirakan nilai f(0,3) . Jika kita dapat menggunakan kembali perkiraan sebelumnya, kita dapat memperoleh akurasi tambahan tanpa menimbulkan penalti kinerja yang terkait dengan evaluasi fungsi tambahan. Metode multistep linier dikembangkan untuk mengatasi masalah ini.

Di satu sisi, metode multistep linier dasar untuk persamaan diferensial hanya mencakup satu titik xi , dalam perhitungan xi+1 . Ini persis bagaimana fungsi metode Euler dan metode Euler merupakan metode multistep linier dasar. Metode selanjutnya menggunakan xi −1 dan xi untuk menghitung xi+1 . Metode Adams-Bashforth menggunakan tambahan berbobot, termasuk bobot negatif, dari langkah dan poin untuk sampai pada langkah berikutnya. Seperti metode numerik lainnya, bobot muncul dari interpolasi polinomial titik yang tersedia.

Metode Adam-Bashforth orde 2 didasarkan pada Persamaan (11).

yi+2=yi+1+h2(3f(xi+1,yi+1)−f(xi,yi)) (11)

Pendekatan ini melakukan interpolasi antara titik sebelumnya untuk memperkirakan titik ketiga dalam grup. Titik ketiga ini menjadi titik tengah dari iterasi berikutnya saat seluruh proses berlanjut. Karena nilai sebelumnya disimpan dan digunakan kembali, evaluasi fungsi tambahan tidak diperlukan. Jika metode Runge-Kutta dapat dibandingkan dengan tip-toeing melalui bidang vektor, maka metode Adams-Bashforth dapat sama dibandingkan dengan menjalankan melalui bidang vektor. Namun, ini tidak berarti metode Adams-Bashforth lebih unggul.

Algoritma Metode Multistep Linier

Tentukan titik awal integrasi x0 dan y0 . Tentukan jumlah iterasi n dan step size h yang digunakan. Lakukan pendekatan pada iterasi ke-1 menggunakan metode Euler.

Lakukan integrasi ke-2 sampai n menggunakan Persamaan (11).

Fadhli Ihsan

56 months ago
Score 0++

Mohon maaf saya lakukan repost karena pada pengetikan sebelumnya terjadi kekeliruan.


Terdapat beberapa metode yang dapat digunakan untuk menyelesaikan permasalahan diferensial dimana salah satunya yaitu metode Runge-Kuta. beberapa metode yang dapat digunakan untuk menyelesaikan persamaan diferensial yaitu:


A. Metode Euler

Metode Euler merupakan metode paling sederhana yang diturunkan dari deret Taylor. Penyelesaian initial value problems menggunakan metode Euler dilakukan melalui Persamaan (1).


yi+1=yi+f(xi,yi)h (1)


dimana i merupakan tahapan iterasi.


Algoritma Metode Euler

1. Tentukan titik awal integrasi x0 dan y0.

2. Tentukan jumlah iterasi n dan step size h yang digunakan.

3. Lakukan integrasi menggunakan Persamaan (2).


B. Metode Heun

Metode Heun merupakan salah satu peningkatan dari metode Euler. Metode ini melibatkan 2 buah persamaan. Persamaan pertama disebut sebagai persamaan prediktor yang digunakan untuk memprediksi nilai integrasi awal (Persamaan (10.2)). Persamaan kedua disebut sebagai persamaan korektor yang mengoreksi hasil integrasi awal (Persamaan (3)). Metode Heun pada Chapter ini merupakan metode prediktor-korektor satu tahapan. Akurasi integrasi dapat ditingkatkan dengan melakukan koreksi ulang terhadap nilai koreksi semula menggunakan persamaan kedua.


y0i+1=yi+f(xi,yi)h (2)


yi+1=yi+f(xi,yi)+f(xi+1,y0i+1)2h (3)


Algoritma Metode Heun

1. Tentukan titik awal integrasi x0 dan y0 .

2. Tentukan jumlah iterasi n dan step size h yang digunakan.

3. Lakukan prediksi nilai awal dengan Persamaan (2).

4. Lakukan koreksi nilai awal menggunakan Persamaan (3).

5. Lakukan koreksi terhadap nilai koreksi yang dihasilkan sebelumnya menggunakan Persamaan (3).


C. Metode Titik Tengah

Metode titik tengah menggunakan setengah step size pada metode Euler untuk melakukan estimasi terhadap integral suatu persamaan diferensial. Metode ini melakukan perhitungan melalui dua tahapan yaitu: menghitung nilai estimasi integral pada setengah step size(Persamaan (4)) dan menghitung nilai integral menggunkan hasil perhitungan setengah step size sebelumnya (Persamaan (5)).


yi+12=yi+f(xi,yi)h2 (4)


yi+1=yi+f(xi+12,yi,12)h (5)


Algoritma Metode Tengah

1. Tentukan titik awal integrasi x0 dan y0 .

2. Tentukan jumlah iterasi n dan step size h yang digunakan.

3. Lakukan integrasi pada setengah tahapan iterasi menggunakan Persamaan (4).

4. Lakukan iterasi pada setengah tahapan selanjutnya menggunakan Persamaan (5).


D. Metode Runge-Kutta Orde 4

Runge-Kutta orde 4 merupakan metode yang paling populer dalam penyelesaian persamaan diferensial. Metode ini dapat memperoleh akurasi deret Taylor tanpa memerlukan diferensiasi orde yang lebih tinggi. Metode Runge-Kutta orde 4 dituliskan ke dalam Persamaan (6).


yi+1=yi+16(k1+2k2+2k3+k4)h (6)


dimana

k1=f(xi,yi) (7)

k2=f(xi+12h,yi+12k1h) (8)

k3=f(xi+12h,yi+12k2h) (9)

k4=f(xi+h,yi+k3h) (10)


Algoritma Metode Runge-Kutta Orde 4

1. Tentukan titik awal integrasi x0 dan y0 .

2. Tentukan jumlah iterasi n dan step size h yang digunakan.

3. Lakukan integrasi menggunakan Persamaan (6).


E. Metode Multistep Linier

Jika metode Runge-Kutta mengalami kesulitan karena terlalu banyak evaluasi fungsi yang digunakan, masuk akal untuk bertanya apakah kita dapat menggunakan kembali beberapa evaluasi fungsi sebelumnya, yang sudah kita buat. Sebagai contoh, kita ingin tahu apakah kita dapat menggunakan kembali estimasi f(0,1) dan f(0,2) untuk memperkirakan nilai f(0,3) . Jika kita dapat menggunakan kembali perkiraan sebelumnya, kita dapat memperoleh akurasi tambahan tanpa menimbulkan penalti kinerja yang terkait dengan evaluasi fungsi tambahan. Metode multistep linier dikembangkan untuk mengatasi masalah ini.


Di satu sisi, metode multistep linier dasar untuk persamaan diferensial hanya mencakup satu titik xi , dalam perhitungan xi+1 . Ini persis bagaimana fungsi metode Euler dan metode Euler merupakan metode multistep linier dasar. Metode selanjutnya menggunakan xi −1 dan xi untuk menghitung xi+1 . Metode Adams-Bashforth menggunakan tambahan berbobot, termasuk bobot negatif, dari langkah dan poin untuk sampai pada langkah berikutnya. Seperti metode numerik lainnya, bobot muncul dari interpolasi polinomial titik yang tersedia.


Metode Adam-Bashforth orde 2 didasarkan pada Persamaan (11).


yi+2=yi+1+h2(3f(xi+1,yi+1)−f(xi,yi)) (11)


Pendekatan ini melakukan interpolasi antara titik sebelumnya untuk memperkirakan titik ketiga dalam grup. Titik ketiga ini menjadi titik tengah dari iterasi berikutnya saat seluruh proses berlanjut. Karena nilai sebelumnya disimpan dan digunakan kembali, evaluasi fungsi tambahan tidak diperlukan. Jika metode Runge-Kutta dapat dibandingkan dengan tip-toeing melalui bidang vektor, maka metode Adams-Bashforth dapat sama dibandingkan dengan menjalankan melalui bidang vektor. Namun, ini tidak berarti metode Adams-Bashforth lebih unggul.


Algoritma Metode Multistep Linier

1. Tentukan titik awal integrasi x0 dan y0 .

2. Tentukan jumlah iterasi n dan step size h yang digunakan. 3. Lakukan pendekatan pada iterasi ke-1 menggunakan metode Euler.

4. Lakukan integrasi ke-2 sampai n menggunakan Persamaan (11).

Maheka.restu

56 months ago
Score 1++

Penerapan Phyton dalam kehidupan sehari-hari sering kita jumpai seperti intagram dan spotify. 1. Tim Spotify memanfaatkan analitis. Mereka memanfaatkan Luigi, modul dari Python, yang disinkronisasi dengan Hadoop, sebuah framework berbasis Java yang memungkinkan pemrosesan data dengan ukuran sangat besar. 2. Luigi memungkinkan kamu untuk membangun pipeline yang kompleks dengan cepat. Ini menangani bundling library yang dibutuhkan, serta mengembalikan error log ke komputer lokalmu. 3. Spotify juga mengaplikasikan Luigi bersama dengan berbagai algoritme machine learning untuk menghidupkan fitur Radio dan Discover, serta rekomendasi untuk orang yang mungkin ingin kamu ikuti. 4. Spotify menyatakan bahwa mereka menggunakan bahasa pemrograman Python dalam sembilan puluh persen urusan MapReduce mereka. Data Science Graduate Program mengibaratkan Hadoop sebagai sumber hidup big data, sementara MapReduce berperan sebagai detak jantungnya.

Pada projek saya sekarang ini juga menggunakan Phyton untuk membaca data yang diberikan oleh mobil dari OBD-II dan juga mengklasifikasikan data tersebut.

Ardy.lefran

56 months ago
Score 0++
Pada sub-bab 4.3.11. dikatakan bahwa "Yang mana nilai -ku diperkirakan untuk nilai u yang kecil, namun stabil pada ±k/α untuk nilai ±αu yang besar. Berikut adalah plot dengan k=1000 dan u ∈ [-0.1,0.1] untuk tiga nilai α". Ada yang bisa bantu menjelaskan?

Yusufraihan

56 months ago
Score 0++

Teman-teman semua, diskusi terkait sistem osilasi satu dimensi beserta metode penyelesaiannya sangat menarik. Banyak sekali penjelasan mengenai metode-metode dalam menyelesaikan permasalahan sistem osilasi satu dimensi, mulai dari metode runge-kutta, euler, heun, bahkan hingga penerapannya dengan menggunakan bahasa pemgrograman python.

Namun saya masih bingung, apa yang melatarbelakangi diskusi tentang sistem osilasi ini? Dalam konteks komputasi teknik, kita menggunakan ilmu komputasi untuk menyelesaikan permasalahan-permasalahan teknik. Permasalahan teknik apa yang berhubungan dengan sistem osilasi? Permasalahan teknik terkait sistem osilasi yang saya ketahui hanyalah sistem-sistem yang menggunakan pegas.

Di sini saya ingin bertanya, permasalahan teknik apa lagi yang memiliki kaitan terhadap sistem osilasi satu dimensi, selain sistem pegas? Mungkin ada yang tahu dan bisa bantu jelaskan, terima kasih

Mohamad Wafirul Hadi

56 months ago
Score 0++

4.3.9 tentang redaman linier

Tidak semua gerak periodik mengalami osilasi sempurna. Pada suatu titik tertentu gerak periodik akan mengalami pelemahan dan pada akhirnya akan diam. Hal ini terjadi karena adanya suatu gaya yang menghambat gerak benda dan arahnya berlawanan dengan arah gerak benda. Setiap sistem yang berperilaku seperti ini dikenal sebagai osilator teredam. Terdapat tiga jenis redaman yang dialami oleh benda yang berosilasi yaitu redaman rendah (underdamped), redaman kritis (critical damping) dan redaman berlebihan (over damping).

Pengurangan dalam amplitudo disebabkan oleh energi mekanik yang hilang akibat perlambatan yang disebut redaman. Setiap sistem yang berperilaku seperti gambar tersebut dikenal sebagai osilator teredam dimana solusi umumnya dapat dituliskan sebagai y(t) = y0 e αt, dengan α merupakan faktor redaman. Benda yang mengalami critical damping biasanya langsung berhenti berosilasi (benda langsung kembali ke posisi setimbangnya) karena redaman yang dialaminya cukup besar. Untuk benda yang mengalami over damping, ini mirip seperti critical damping hanya saja pada osilasi over damping benda lama sekali tiba di posisi setimbangnya. Hal ini disebabkan karena redaman yang dialami oleh benda sangat besar.

Dari hasil simulasi 1D osilasi terkopel baik itu osilator harmonik maupun teredam diperoleh bahwa program yang dibuat dengan menggunakan Python dapat mensimulasikan sistem osilator harmonik sederhana hingga terjadi redaman.
Add your comment
ccitonlinewiki welcomes all comments. If you do not want to be anonymous, register or log in. It is free.