folder Tahribat.com Forumları
linefolder Yazılımlar / Diğer Programlar
linefolder Matlab Ufak Bir Program İçin Yardım



Matlab Ufak Bir Program İçin Yardım

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ExpirE
    ExpirE's avatar
    Kayıt Tarihi: 29/Temmuz/2005
    Erkek

    Hocalar. şu formülleri bir program haline getirmek istiyorum.

    Bu nedir diye soran olursa bir yerin depremselliğinin istatistiksel olarak periyotlarınının gerçekleşme olasılığını hesaplayan bir dizi formül.

    ben bunları matlab a dökmek istiyorum. yarımcı olur musunuz?

     

    Verilenler a ve b

    T değeri periyodu temsil ediyor. 10 20 30 40 yıllık periyotlar için kullanıyoruz. M de depremşn magnitüd ünü. Yani büüklüğünü.

    Kısaca değişkenler a, b, T  ve M geri kalanlar formül zaten.

     

     

    Formüller

    a'=a-log(b-ln(a)

    a1'=a'-logT

    n(M)=10^(a1-bM)

    r(M)=a-e^(-n(M).T)

     

     

    r(M) değerini hesaplıyoruz verilen a ve b değerlerine göre ve bulunan sonuç bize yüzdelik olarak olma olasılığını veriyor.

     

    matlabda yapmak istediğim. Bu değişkenler girildikten sonra her M değerine göre tüm periyotlarda  yani T değerinin 10 20 30 40 50 60 70 80 90 100 olduğu durumlar için hazırlayıp tablo oluştursun.

    Bunu nasıl yaaprım?

     

     


    "bea"
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    aercys
    aercys's avatar
    Kayıt Tarihi: 12/Nisan/2008
    Erkek

    Şöyle bir deneyebilir misiniz?

     

    M = 1;

    a = 1;

    b = 1;

    T = [10 20 30 40 50 60 70 80 90];

     

    a_ = a - log10(b - log(a));

    a1 = a_ - log10(T);

     

    Nm = zeros(1, length(T));

    Rm = zeros(1, length(T));

     

    for i=1:length(T)

        Nm(1, i) = 10 ^ (a1(1, i) - b*M);

        Rm(1, i) = a - exp(-Nm(1, i) * T(1, i));

     

    end

     


    0x62 0x75 0x6e 0x75 0x20 0x79 0x61 0x7a 0x61 0x6e 0x20 0x74 0x6f 0x73 0x75 0x6e 0x2c 0x20 0x6f 0x6b 0x75 0x79 0x61 0x6e 0x61 0x20 0x6b 0x6f 0x73 0x75 0x6e
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ExpirE
    ExpirE's avatar
    Kayıt Tarihi: 29/Temmuz/2005
    Erkek
    aercys bunu yazdı

    Şöyle bir deneyebilir misiniz?

     

    M = 1;

    a = 1;

    b = 1;

    T = [10 20 30 40 50 60 70 80 90];

     

    a_ = a - log10(b - log(a));

    a1 = a_ - log10(T);

     

    Nm = zeros(1, length(T));

    Rm = zeros(1, length(T));

     

    for i=1:length(T)

        Nm(1, i) = 10 ^ (a1(1, i) - b*M);

        Rm(1, i) = a - exp(-Nm(1, i) * T(1, i));

     

    end

     

    Hocam ilgin için teşekkür ederim.

    Hesapladıklarını nerede göstericem. Tablo halinde vermesini sağlayabilir miyim?


    "bea"
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    aercys
    aercys's avatar
    Kayıt Tarihi: 12/Nisan/2008
    Erkek
    ExpirE bunu yazdı
    aercys bunu yazdı

    Şöyle bir deneyebilir misiniz?

     

    M = 1;

    a = 1;

    b = 1;

    T = [10 20 30 40 50 60 70 80 90];

     

    a_ = a - log10(b - log(a));

    a1 = a_ - log10(T);

     

    Nm = zeros(1, length(T));

    Rm = zeros(1, length(T));

     

    for i=1:length(T)

        Nm(1, i) = 10 ^ (a1(1, i) - b*M);

        Rm(1, i) = a - exp(-Nm(1, i) * T(1, i));

     

    end

     

    Hocam ilgin için teşekkür ederim.

    Hesapladıklarını nerede göstericem. Tablo halinde vermesini sağlayabilir miyim?

    Tablo halinde vermesini nasıl istiyorsunuz hocam o kısmı anlayamadım. Workspace'te zaten bu Nm ve Rm değerlerini vektör (tablo) formunda görüntüleyebilirsiniz. Siz bu veriyi dışarı mı aktarmak istiyorsunuz?


    0x62 0x75 0x6e 0x75 0x20 0x79 0x61 0x7a 0x61 0x6e 0x20 0x74 0x6f 0x73 0x75 0x6e 0x2c 0x20 0x6f 0x6b 0x75 0x79 0x61 0x6e 0x61 0x20 0x6b 0x6f 0x73 0x75 0x6e
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ExpirE
    ExpirE's avatar
    Kayıt Tarihi: 29/Temmuz/2005
    Erkek
    aercys bunu yazdı
    ExpirE bunu yazdı
    aercys bunu yazdı

    Şöyle bir deneyebilir misiniz?

     

    M = 1;

    a = 1;

    b = 1;

    T = [10 20 30 40 50 60 70 80 90];

     

    a_ = a - log10(b - log(a));

    a1 = a_ - log10(T);

     

    Nm = zeros(1, length(T));

    Rm = zeros(1, length(T));

     

    for i=1:length(T)

        Nm(1, i) = 10 ^ (a1(1, i) - b*M);

        Rm(1, i) = a - exp(-Nm(1, i) * T(1, i));

     

    end

     

    Hocam ilgin için teşekkür ederim.

    Hesapladıklarını nerede göstericem. Tablo halinde vermesini sağlayabilir miyim?

    Tablo halinde vermesini nasıl istiyorsunuz hocam o kısmı anlayamadım. Workspace'te zaten bu Nm ve Rm değerlerini vektör (tablo) formunda görüntüleyebilirsiniz. Siz bu veriyi dışarı mı aktarmak istiyorsunuz?

    Evet hocam dışarı aktarmasını sağlayabilirmiyim txt halinde


    "bea"
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    aercys
    aercys's avatar
    Kayıt Tarihi: 12/Nisan/2008
    Erkek
    ExpirE bunu yazdı
    aercys bunu yazdı
    ExpirE bunu yazdı
    aercys bunu yazdı

    Şöyle bir deneyebilir misiniz?

     

    M = 1;

    a = 1;

    b = 1;

    T = [10 20 30 40 50 60 70 80 90];

     

    a_ = a - log10(b - log(a));

    a1 = a_ - log10(T);

     

    Nm = zeros(1, length(T));

    Rm = zeros(1, length(T));

     

    for i=1:length(T)

        Nm(1, i) = 10 ^ (a1(1, i) - b*M);

        Rm(1, i) = a - exp(-Nm(1, i) * T(1, i));

     

    end

     

    Hocam ilgin için teşekkür ederim.

    Hesapladıklarını nerede göstericem. Tablo halinde vermesini sağlayabilir miyim?

    Tablo halinde vermesini nasıl istiyorsunuz hocam o kısmı anlayamadım. Workspace'te zaten bu Nm ve Rm değerlerini vektör (tablo) formunda görüntüleyebilirsiniz. Siz bu veriyi dışarı mı aktarmak istiyorsunuz?

    Evet hocam dışarı aktarmasını sağlayabilirmiyim txt halinde

    kodun sonuna şu satırı ekleyin;

    save('filename.txt','-ascii', 'Nm', 'Rm')

     


    0x62 0x75 0x6e 0x75 0x20 0x79 0x61 0x7a 0x61 0x6e 0x20 0x74 0x6f 0x73 0x75 0x6e 0x2c 0x20 0x6f 0x6b 0x75 0x79 0x61 0x6e 0x61 0x20 0x6b 0x6f 0x73 0x75 0x6e
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ExpirE
    ExpirE's avatar
    Kayıt Tarihi: 29/Temmuz/2005
    Erkek
    aercys bunu yazdı
    ExpirE bunu yazdı
    aercys bunu yazdı
    ExpirE bunu yazdı
    aercys bunu yazdı

    Şöyle bir deneyebilir misiniz?

     

    M = 1;

    a = 1;

    b = 1;

    T = [10 20 30 40 50 60 70 80 90];

     

    a_ = a - log10(b - log(a));

    a1 = a_ - log10(T);

     

    Nm = zeros(1, length(T));

    Rm = zeros(1, length(T));

     

    for i=1:length(T)

        Nm(1, i) = 10 ^ (a1(1, i) - b*M);

        Rm(1, i) = a - exp(-Nm(1, i) * T(1, i));

     

    end

     

    Hocam ilgin için teşekkür ederim.

    Hesapladıklarını nerede göstericem. Tablo halinde vermesini sağlayabilir miyim?

    Tablo halinde vermesini nasıl istiyorsunuz hocam o kısmı anlayamadım. Workspace'te zaten bu Nm ve Rm değerlerini vektör (tablo) formunda görüntüleyebilirsiniz. Siz bu veriyi dışarı mı aktarmak istiyorsunuz?

    Evet hocam dışarı aktarmasını sağlayabilirmiyim txt halinde

    kodun sonuna şu satırı ekleyin;

    save('filename.txt','-ascii', 'Nm', 'Rm')

     

    teşekkür ederim. Son olarak M = 1; için değilde 1 2 3 4 5 6 7 8 için hesaplaması sağlayabilir miyim peki? yani 1 den 9 a kadar hesaplasın.  

     

     


    "bea"
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    aercys
    aercys's avatar
    Kayıt Tarihi: 12/Nisan/2008
    Erkek

    Rica ederim hocam. M içinde birden çok değer hesaplatabilmeniz için vektör olarak tanımlamanız lazım. M = [1,2,3,...,N] gibi.

    Formülde de;

     Nm(1, i) = 10 ^ (a1(1, i) - b*M); yerine  Nm(1, i) = 10 ^ (a1(1, i) - b*M(1, i)); şeklinde düzenleme yapmalısınız.


    0x62 0x75 0x6e 0x75 0x20 0x79 0x61 0x7a 0x61 0x6e 0x20 0x74 0x6f 0x73 0x75 0x6e 0x2c 0x20 0x6f 0x6b 0x75 0x79 0x61 0x6e 0x61 0x20 0x6b 0x6f 0x73 0x75 0x6e
Toplam Hit: 1216 Toplam Mesaj: 8
matlab yardım