MATLAB'de enterpolasyon kodu

MATLAB bir enterpolasyonu basitleştirmenize yardımcı olur.

Doğrudan yöntem

Doğrudan enterpolasyon yöntemi, birkaç hesaplama adımını içerir. Giriş örneğini kullanarak: "dt = 50 - 40" tablonun sıcaklık aralığıdır. "dp = 92 - 70", tablonun basınç aralığıdır. "dt1 = (44-40) / dt", söz konusu sıcaklık için sıcaklık aralığının fraksiyonudur. "response = dt1 * dp + 70", tablodaki en düşük basınca eklenen basınç aralığı üzerindeki aynı fraksiyondur; ve cevap budur. Bu örnekte, 78.8 basınç birimi.

MATLAB'de doğrusal enterpolasyon

MATLAB, bir önceki bölümün dört hesaplamasını aynı anda yerine getirebilen bir fonksiyon içerir. Bu "interp1" işlevidir ve hesaplamalarınızı basitleştirecektir. Önceki örneği kullanarak, interp1 fonksiyonunu, basınç aralığı, sıcaklık aralığı ve söz konusu sıcaklık ile birlikte sağlayın ve size tek bir adımda basınç yanıtını verecektir. Aşağıdaki kodu MATLAB komut satırına yazın:

cevap = interp1 ([40 50], [70 92], 44)

MATLAB, önceki bölümün sonucuyla eşleşen "response = 78.8000" ile cevap verecektir.

En yakın komşunun enterpolasyonu

MATLAB'ın interp1 fonksiyonu, enterpolasyon gerçekleştirmek için çeşitli yöntemler sunar. Doğrusal varsayılan yöntemdir. Bununla birlikte, 40 ve 50 numaralı rakamlar yerine 40 ve 50 arasındaki tüm tamsayılar için sıcaklık değerlerine sahip olduğunuzu varsayın. Ayrıca, tablonuzdaki her sıcaklık değeri için sadece tamsayılara karşılık gelen basınç değerlerine sahip olduğunuzu varsayalım. . "En yakın komşu" yöntemini kullanırsanız, MATLAB size kesin bir değer vermez; bunun yerine size tablodaki en yakın cevabı söyler. Aşağıdaki biçimde kod, bunu gerçekleştirir:

cevap = interp1 ([sıcaklık değerleri], [basınç değerleri], 43.4, 'en yakın')

Kübik eğrilerin enterpolasyonu

Kübik eğri, interp1 işlevini veya özerk "spline" işlevini gerçekleştirebilen başka bir yöntemdir. Fonksiyonun üçüncü argümanına benzersiz bir değer vermek yerine, onu ilk aralıkta (tablodaki sıcaklıklar) bir değer aralığı verin. Spline fonksiyonu, ikinci aralıkta karşılık gelen bir aralığı (tablodaki basınçlar) döndürecektir. Sıcaklıkların bir alt aralığına karşılık gelen basınç aralığını çıkarmak için kodu aşağıdaki biçimde kullanabilirsiniz:

cevap = spline ([sıcaklık aralığı], [basınç aralığı], [normal sıcaklık])