Fotodetektör, PV, TFT ve İstatistik Analizleri
Bu bölüm, Analiz (Analyze) çalışma alanındaki tüm çekirdek analiz modüllerini ayrıntılı olarak anlatır. Ölçüm çalışma alanı cihazdan veri üretirken, Analiz çalışma alanı sizin yüklediğiniz bir dosyadan (CSV) fiziksel metrikler çıkarır. Her modül saf bir çekirdek fonksiyondur: analyze_<modul>(dataset, params) -> AnalysisResult. Hesaplanamayan hiçbir değer asla 0 ile doldurulmaz; bilinmeyen değer her zaman boş (None, arayüzde —) gösterilir.
examples/analysis/ altında gemilenen, fizik-temelli sentetik veri setlerinden doğrulanmıştır. Her örnek veri seti, elle türetilmiş bir "ground truth" (gerçek değer) ile gelir ve tests/test_realistic_examples.py tarafından otomatik doğrulanır; yani kılavuzdaki sayılar üründe bit-bit yeniden üretilebilir.
Bir cihazla ölçüm yaptığınızda elinizde bir yığın sayı (zaman, akım, gerilim sütunları) kalır; bu bölüm o ham tabloyu "şu fotodedektör ne kadar hızlı?", "şu güneş hücresinin verimi yüzde kaç?" gibi anlamlı fiziksel cevaplara çevirir. Tıpkı bir kan tahlili cihazının kan örneğinden tek tek değerleri (şeker, demir, kolesterol) çıkarması gibi, her analiz modülü yüklediğiniz CSV dosyasından belirli bir büyüklüğü hesaplar ve sonucun güvenilir olup olmadığını söyler.
Nasıl çalışır: Bu bölümdeki modüllerin çoğu bir cihazın karakteristik eğrisini (zaman yanıtı, J-V, transfer, gürültü spektrumu...) yorumlar; çünkü o eğrinin şekli doğrudan içindeki fiziği taşır (üstel yükselme = RC/tuzak, J-V dizi = diyot+dirençler, alt-eşik doğrusu = anahtarlama keskinliği). Her modül eğriden fiziksel parametreleri çıkarır, sonucu standartlarla (IEC/IEEE/GUM) ve örnek "ground truth" değerlerle karşılaştırır ve bir güvenilirlik rozetiyle işaretler. Aşağıdaki modül kutularında her metriğin fiziksel anlamı, tipik aralığı ve sık yapılan yorum hatası tek tek açıklanır.
- Neden yapılır: ham sinyalin tek başına bir anlamı yoktur; karar verebilmek için onu standart, karşılaştırılabilir metriklere (hız, verim, gürültü, kalite) dönüştürmek gerekir.
- Ne öğretir / ne ölçer: fotodedektör, güneş hücresi (PV), ince-film transistör (TFT) ve istatistik için onlarca fiziksel büyüklüğü; ayrıca her sonucun ne kadar güvenilir olduğunu (rozet).
- Nerede kullanılır: araştırma laboratuvarında cihaz karşılaştırma, üretimde kalite kontrol, ders/laboratuvar deneylerinde sonuç yorumlama ve arıza analizi.
1. Ortak Kavramlar — Tüm Modüllerde Geçerli
1.1 Rol-tabanlı otomatik sütun eşlemesi
Bir CSV yüklediğinizde, yükleyici (loader) her sütunu bir role atar. Modül, sütunları adlarıyla değil rolleriyle okur; böylece farklı cihazlardan gelen, farklı başlıklara sahip dosyalar elle haritalama gerektirmeden "kendiliğinden hesaplanır". Başlıca roller:
| Rol | Anlam | Tipik birim |
|---|---|---|
t | Zaman / döngü ekseni | s |
i | Akım (ana sinyal) | A |
v | Gerilim | V |
i_dark | Karanlık akım (gürültü serisi) | A |
p_in | Gelen optik güç | W |
wavelength | Dalga boyu | nm |
v_drive | Sürücü (PWM) sinyali | V |
v_response | Dedektör yanıt sinyali | V |
v_bias | Kademeli kapı gerilimi (TFT çıkış ailesi) | V |
Bir dosya, modülün descriptor'undeki match ipuçları (ör. vgs, gate) sayesinde aynı-birim belirsizliklerini de çözer (ör. bir TFT çıkış dosyasında vgs_set → v_bias adım ekseni, vds_* → v tarama ekseni). CSV biçimi: yorum satırları # ile başlar, ardından Başlık [birim] satırı, sonra veri gelir; yükleyici sondaki [birim] ekini ayırır.
1.2 AnalysisResult — her modülün çıktı zarfı
Her modül aynı çıktı yapısını doldurur:
- scalars (results) — adlandırılmış sayısal metrikler (ör.
rise_time_s,pce_pct); birim ad içinde taşınır. - units — her metriğin birimi.
- flags — güvenilirlik/kalite bayrakları (bool), ör.
metrics_resolved,nep_reliable. - warnings — kullanıcıya doğal-dil uyarı satırları.
- narrative — Türkçe tek-cümle özet.
- plots — grafik tarifleri (zaman serisi, log-log, J-V, devre şeması...).
- note — veri yetersizse neden hesaplanamadığını açıklayan satır.
1.3 Güvenilirlik rozeti (reliability badge)
Her sonucun üstünde üç durumlu bir rozet gösterilir. Öncelik sırası: unreliable > non_stc > reliable.
| Rozet | Anlam | Tetik |
|---|---|---|
| ✓ Güvenilir reliable (güvenilir) | Tüm güvenilirlik-belirleyici kontroller geçti | Varsayılan |
| ✕ unreliable (güvenilmez) | sets_reliability=true olan herhangi bir kalite kontrolü BAŞARISIZ | ör. metrics_resolved False |
| ⚠ STC dışı non_stc (standart-dışı koşul) | Gerekli koşul (irradiance / temperature / active_area) sağlanmamış | Provenance koşulu eksik |
Her descriptor ayrıca, başarısız olduğunda kullanıcıya düzeltme eylemi (sütun haritala, eşikleri otomatik bul, parametreleri aç, veriyi yeniden yükle, eksen ölçeğini değiştir) öneren tanılar (diagnostics) taşır.
1.4 GUM belirsizlik çerçevesi
Belirsizlik raporlayan modüller ISO/IEC Guide 98-3:2008 (GUM) Type-A değerlendirmesini izler:
örnek standart sapma s = sqrt( Σ(x_i - x̄)² / (N-1) ) (Bessel düzeltmesi)
ortalamanın belirsizliği u(x̄) = s / sqrt(N) (Type-A)
genişletilmiş belirsizlik U = k · u(x̄) (k = kapsam faktörü, varsayılan 2)
Arayüzdeki tek biçimlendirici format_quantity, ± terimini yalnızca u_std > 0 VE n ≥ 2 olduğunda yazar; değer eksikse uzun tire — gösterir, asla 0 değil. Sayılar SI ön-ekiyle (n, µ, m, k, M...) gösterilir; %, dB, Jones ve bileşik birimler ön-ek almaz.
2. Fotodetektör Analiz Modülleri
2.1 Zaman Yanıtı — temporal_response (Modül 1)
Bir ışık dedektörüne ışığı aniden açıp kapattığınızda, çıkışı o anda zıplamaz; bir miktar gecikmeyle yükselir ve söner. Bu modül o "ne kadar çabuk tepki veriyor?" sorusunu sayıya döker. Tıpkı bir arabanın 0'dan 100 km/s'e kaç saniyede çıktığını ölçmek gibi — dedektörün ışığa ne hızda ulaştığını ve ne hızda durduğunu gösterir.
Fiziksel arka plan: Işık açıldığında foton soğurulup taşıyıcılar üretilir, ama bu taşıyıcılar yükü cihazın kapasitansında (ve yük direncinde) biriktirir; sistem bir RC devresi gibi davranıp çıkışı anlık değil üstel olarak doyum seviyesine taşır. Bu yüzden zaman serisi keskin bir basamak değil, yumuşak bir "yükselen-üstel / sönen-üstel" şeklindedir; %10→%90 arası geçiş tek-kutuplu sistemde tam olarak ln(9)·τ ≈ 2.197·τ sürer. Işık kapanınca aynı RC boşalır; eğer malzemede tuzaklar varsa düşme/toparlanma, yükselmeden belirgin biçimde yavaş olur (asimetri = tuzaklanma parmak izi).
- Neden yapılır: dedektörün hızlı sinyalleri (örn. yüksek hızlı haberleşme, darbeli ışık) bozmadan/kaçırmadan takip edip edemeyeceğini anlamak için.
- Ne öğretir / ne ölçer:
rise_time_s= ışık açılınca çıkışın %10'dan %90'a tırmanma süresi (turn-on hızı);fall_time_s= ışık kapanınca %90'dan %10'a düşme süresi (turn-off hızı);recovery_time_s= tabana (taban+%5) geri dönüş süresi, kalıcı etkiyi yakalar;t_fall/t_riseoranı simetriyi (≈1 temiz, ≫1 tuzaklanma) gösterir;n_cyclesortalama alınan aç/kapa döngü sayısıdır. - Tipik değerler ve yorumu: hızlı Si PIN fotodiyot ns–µs; fototransistör µs; a-Si / organik / perovskit fotoiletkenler ms–s mertebesinde "yavaş" sayılır.
t_fall ≈ t_riseideal;t_fallçok daha büyükse derin tuzaklar/kalıcı fotoiletkenlik vardır. - Sık hata / dikkat: örnekleme çok seyrek olursa (Nyquist:
t_r ≥ 1/f_ssağlanmazsa) yükselme süresi olduğundan büyük ölçülür —nyquist_okbayrağını kontrol edin. Gürültülü sinyalde taban/tepe yanlış kestirilip eşikler kayabilir; geçiş bulunamazsa eşik yüzdelerini gözden geçirin. - Nerede kullanılır: optik haberleşme alıcısı seçimi, sensör tasarımı doğrulama, hızlı foto-anahtar karakterizasyonu ve malzemede tuzak/kalıcılık tanısı.
Ne yapar: Bir foto-anahtarlama (ışık aç/kapa) zaman serisinden yükselme (rise), düşme (fall) ve toparlanma (recovery) sürelerini çıkarır.
Sütunlar (roller): Gerekli: t, i. İsteğe bağlı: v (gerilim verisi + r_load_ohm ile akıma çevrilebilir).
| Parametre | Birim | Açıklama | Varsayılan |
|---|---|---|---|
threshold_low_pct | % | Alt eşik (yükselme başlangıcı) | 10.0 |
threshold_high_pct | % | Üst eşik (yükselme bitişi) | 90.0 |
recovery_pct | % | Toparlanma eşiği (taban+%) | 5.0 |
r_load_ohm | Ω | Yük direnci (V→I çevrimi için) | 0.0 |
Uygulanan formül: Taban (dark) = en düşük %10'un ortalaması; tepe (peak) = en yüksek %5'in ortalaması; genlik amp = peak − dark. Seviyeler dark + {10, 90, 5}% × amp. Her döngü için t_rise = t(%90) − t(%10), ortalaması alınır. Tek-kutuplu RC sistemde kapalı form:
Çıktılar: rise_time_s, rise_time_std_s, fall_time_s, fall_time_std_s, recovery_time_s [s]; dark_level, peak_level [A]; n_cycles.
Güvenilirlik / kalite bayrakları: rise_time_reliable — Nyquist kontrolü (t_r ≥ 1/f_s). Descriptor kontrolleri: cycles_found (n_cycles ≥ 1, güvenilirliği belirler), above_floor (signal_range > 3·noise_sigma, güvenilirliği belirler), nyquist_ok (uyarı). Standartlar: IEEE 181-2011, IEC 60469:2013, GUM.
Örnek veri / beklenen sonuç: examples/analysis/01_temporal_response.csv (tek-kutuplu RC, 3 döngü, τ_r=20 µs, τ_f=60 µs). Beklenen: t_rise = 43.944 µs, t_fall = 131.833 µs, t_fall/t_rise = 3.0, n_cycles = 3.
note doluysa), eşik yüzdelerini veya taban seviyesini gözden geçirin; çok gürültülü sinyalde threshold_low_pct değerini yükseltmek kararlılığı artırır.
temporal_response modülü — foto-anahtarlama zaman serisinden rise/fall/recovery çıkarımı.Zaman serisinde tek bir aç/kapa döngüsü kullanılır; taban (dark) ve tepe (peak) seviyelerinden genlik bulunup yatay %10 ve %90 seviye çizgileri işaretlenir.
- Önce taban (en düşük %10 ortalaması) ve tepe (en yüksek %5 ortalaması) belirlenir; genlik
amp = peak − darkile%10ve%90seviyeleri çizilir. - Yükselen kenarın bu iki seviyeyi kestiği zaman değerleri okunur (gerekiyorsa komşu noktalar arasında doğrusal ara-değerleme); düşme için aynısı %90→%10 yapılır.
- Sonuç:
t_rise = t(%90) − t(%10),t_fall = t(%10) − t(%90)ve döngüler ortalanır; tek-kutuplu RC'det_rise = ln(9)·τ ≈ 2.197·τ.

2.2 Foto/Karanlık Akım Oranı — photo_dark_ratio (Modül 2)
Bir ışık dedektörü, hiç ışık yokken bile küçük bir "karanlık akım" üretir; ışık geldiğinde akım çok daha büyür. Bu modül ikisinin oranını ve sinyalin gürültüye göre ne kadar net seçildiğini (SNR) hesaplar. Sessiz bir odada fısıltıyı duyabilmek gibi — ortam gürültüsü ne kadar düşükse, gerçek sinyali o kadar güvenle ayırt edersiniz.
Fiziksel arka plan: Karanlık akım, ışık olmadan termal olarak üretilen taşıyıcılardan ve sızıntıdan (jeneration-rekombinasyon, yüzey kaçağı, ters-besleme sızıntısı) doğar; bu, dedektörün "tabanı"dır. Işık gelince foto-üretilen taşıyıcılar bunun üzerine binip akımı yukarı taşır, dolayısıyla zaman serisinde iki kararlı plato (karanlık ve aydınlık) görürsünüz; aradaki sıçramanın yüksekliği I_photo'dur. Karanlık platodaki ufak titreşim ise gürültüdür (σ); sinyali güvenle "var/yok" diye okuyabilmeniz bu sıçramanın gürültünün kaç katı olduğuna bağlıdır.
- Neden yapılır: dedektörün zayıf ışığı arka plandan (karanlık akım + gürültü) ayırt edip edemediğini ve ne kadar "temiz" bir aç/kapa kontrastı verdiğini ölçmek için.
- Ne öğretir / ne ölçer:
i_dark= ışıksız taban akımı (ne kadar küçükse o kadar iyi);i_photo= ışıkla gelen net akım artışı;photo_dark_ratio = I_photo/I_dark= kontrast (büyük = iyi);noise_sigma= karanlık bölgenin standart sapması;snr_db = 20·log10(|I_photo|/σ)= sinyalin gürültüden kaç dB yukarıda olduğu. - Tipik değerler ve yorumu: iyi bir fotodiyot için oran 10³–10⁶ ve SNR onlarca dB (ör. ~60 dB çok temiz) beklenir; oran <10 ise sinyal arka planda boğulmuş demektir. Karanlık akım sıcaklıkla üstel artar, dolayısıyla düşük
I_dark= düşük gürültü ve daha zayıf ışığı görebilme. - Sık hata / dikkat: SNR'yi log (dB) yerine doğrusal okuyup yanlış yorumlamak; karanlık platonun yeterince uzun ölçülmemesi (σ kötü kestirilir); aydınlık bölge doyuma/compliance'a çarpmışsa
I_photoolduğundan küçük çıkar. Oran ile SNR farklıdır: biri kontrastı, diğeri gürültüye göre ayırt edilebilirliği ölçer. - Nerede kullanılır: düşük ışık seviyesi algılama, sensör kalite kontrolü, malzeme karşılaştırması ve sıcaklığa bağlı karanlık-akım tanısı.
Ne yapar: Kare optik adımdan foto/karanlık akım oranını ve sinyal/gürültü oranını (SNR) hesaplar.
Sütunlar: Gerekli: i. İsteğe bağlı: t. Parametre yok.
Uygulanan formül: Kararlı karanlık (taban+%10 altı) ve aydınlık (taban+%90 üstü) bölgeleri ayrılır; gürültü σ = std(karanlık bölge).
I_photo = I_light − I_dark
ratio = I_photo / I_dark
SNR[dB] = 20 · log10( |I_photo| / σ )
Çıktılar: i_dark, i_photo, noise_sigma [A]; photo_dark_ratio (boyutsuz); snr_db [dB]. Bayrak: dark_current_resolved.
Örnek / beklenen: 02_photo_dark_ratio.csv (I_dark=100 nA, I_light=10 µA, σ=10 nA). Beklenen: ratio = 99.0, SNR = 20·log10(990) = 59.91 dB.

photo_dark_ratio modülü — foto/karanlık akım oranı ve dB cinsinden SNR.2.3 Kalıcılık / Tuzaklanma — persistence (Modül 3)
Işığı kapattığınızda bazı dedektörlerin sinyali hemen sıfırlanmaz, bir süre "takılı" kalır; bu, malzemedeki tuzakların yük taşıyıcılarını geç bırakmasındandır. Bu modül o yavaş sönümü modelleyip ne kadar sürdüğünü çıkarır. Karanlıkta parlayan bir oyuncağın ışık kapandıktan sonra bir süre parlamaya devam etmesi gibi.
Fiziksel arka plan: Işık altında üretilen taşıyıcıların bir kısmı kusur/tuzak seviyelerine yakalanır; ışık kapanınca bu tuzaklar yükü termal olarak geç serbest bırakır, böylece akım anında sıfıra inmez (kalıcı fotoiletkenlik, PPC). Tek bir tuzak derinliği varsa sönüm tek-üstel (exp(−t/τ)) olur; tuzaklar dağılımlıysa eğri "esnetilmiş üstel" (stretched, β<1) ya da iki ayrı zaman ölçeğiyle çift-üstel şeklinde bükülür. Bu yüzden grafikte hızlı bir ilk düşüş ardından uzayan bir kuyruk görmek tipiktir; modül en yüksek R²'li modeli seçerek bu kuyruğun karakterini sayıya döker.
- Neden yapılır: malzemedeki kusur/tuzak yoğunluğunu ve cihazın "hafıza etkisi" (yavaş sıfırlanma) gösterip göstermediğini anlamak için.
- Ne öğretir / ne ölçer:
persistence_tau_s= sönümün karakteristik zaman sabiti τ (büyük = uzun hafıza/derin tuzak);persistence_model= seçilen model (single/stretched/double);persistence_beta= esnetme üssü β (1'e yakın = tek zaman ölçeği, <1 = geniş tuzak dağılımı);persistence_r2= modelin veriye uyum kalitesi. - Tipik değerler ve yorumu: hızlı kristal dedektörlerde τ µs–ms; tuzak yoğun a-Si/oksit/perovskit/organik cihazlarda τ saniyeler–dakikalar olabilir. β≈1 temiz tek-tuzak; β≈0.3–0.7 dağılımlı tuzaklar; R²<0.95 ise tek model yetersizdir, modül alternatif önerir.
- Sık hata / dikkat: ışık-kapanma anının yanlış tespiti tüm fiti bozar; pencere çok kısa seçilirse uzun kuyruk görülmez ve τ küçük çıkar. Tek-üstele zorlamak, çift-üstel bir sönümde fiziği yanlış raporlar — R² ve model seçimini birlikte okuyun.
- Nerede kullanılır: yeni malzeme araştırması, kusur/tuzak tanısı, hızlı tekrar gerektiren uygulamalarda (yüksek kare hızlı görüntüleme vb.) uygunluk değerlendirmesi.
Ne yapar: Işık kapandıktan sonra sinyalin yavaş sönümünü (kalıcı fotoiletkenlik / trapping) üstel modellerle fitleyip zaman sabitini çıkarır.
Sütunlar: Gerekli: t, i. Parametre yok.
Uygulanan formül: Işık-kapanma anı tespit edilir, sonraki bölge izole edilir ve üç aday model fitlenir; en yüksek R²'li model seçilir:
- Tekli üstel:
I = A·exp(−(t−t₀)/τ) + C - Esnetilmiş (stretched):
I = A·exp(−((t−t₀)/τ)^β) + C - Çift üstel:
I = A₁·exp(−t/τ₁) + A₂·exp(−t/τ₂) + C
Çıktılar: persistence_model, persistence_r2, persistence_tau_s [s], persistence_beta, single_exp_tau_s, single_exp_r2. Uyarı: R² < 0.95 ise alternatif model önerilir.
Örnek / beklenen: 03_persistence_decay.csv (tekli üstel, τ=0.25 s). Beklenen: single_exp_tau_s ≈ 0.25 s, R² ≈ 1.0.

persistence modülü — üstel/esnetilmiş/çift-üstel model seçimiyle sönüm zaman sabiti.2.4 -3 dB Bant Genişliği — bandwidth_3db (Modül 8)
Bir dedektörün ne kadar hızlı tepki verdiğini (yükselme süresi) doğrudan "en fazla kaç Hz'lik sinyali takip edebilir?" sorusunun cevabına çevirir. Bir koşucunun adım hızından dakikada kaç adım atabileceğini hesaplamak gibi — hız ile frekans aynı madalyonun iki yüzüdür.
Fiziksel arka plan: Zaman alanında "yavaş" olan bir sistem, frekans alanında "dar bantlı"dır; aynı RC/tek-kutup davranışı bu iki yüzü birbirine kilitler. Tek-kutuplu bir alçak-geçiren için kazanç -3 dB'ye (gücün yarısına) düştüğü köşe frekansı ile %10–%90 yükselme süresi arasında sabit bir bağ vardır: BW·t_r ≈ 0.35. Yani ölçülen yükselme süresini tersine çevirip cihazın çıkışı %30 zayıflamadan geçirebildiği en yüksek frekansı kestirebilirsiniz; bu yüzden ayrı bir frekans taraması yapmadan hız sınırını okursunuz.
- Neden yapılır: dedektörün belirli bir frekanstaki sinyali (modülasyon, darbe treni) zayıflatmadan geçirip geçiremeyeceğini, ayrı bir frekans-süpürmesi yapmadan bilmek için.
- Ne öğretir / ne ölçer:
rise_time_s= kullanılan %10–%90 yükselme süresi (verilmezsetemporal_response'tan);bandwidth_3db_hz= bundan türeyen -3 dB bant genişliği (büyük = hızlı cihaz). BağıntıBW = 0.35/t_r. - Tipik değerler ve yorumu: ms'lik yükselme → kHz bant; µs → yüz kHz–MHz; ns → GHz mertebesi. 0.35 katsayısı tek-kutup/Gauss yaklaşımıdır; çok-kutuplu veya tuzak-baskın cihazlarda gerçek bant bundan sapabilir, sonuç bir mertebe-tahmini olarak okunmalıdır.
- Sık hata / dikkat: yükselme süresi Nyquist'i ihlal eden seyrek örneklemeyle ölçülmüşse, türetilen bant da hatalı olur; ayrıca düşme süresi yükselmeden çok büyükse (tuzaklanma) tek
t_r'den çıkan bant gerçek tekrar hızını abartır. - Nerede kullanılır: yüksek hızlı optik bağlantı tasarımı, sensör spesifikasyonu doğrulama ve hız sınırı (modülasyon bandı) kestirimi.
Ne yapar: Yükselme süresinden -3 dB bant genişliğini türetir (Gauss/tek-kutup yaklaşımı).
Sütunlar: İsteğe bağlı: t, i. Parametre: rise_time_s (0 ise veriden temporal_response ile hesaplanır).
Çıktılar: rise_time_s [s], bandwidth_3db_hz [Hz].
Örnek / beklenen: 04_bandwidth_3db.csv (aynı RC darbesi). t_rise = 43.944 µs → BW = 0.35 / 43.944 µs = 7964.9 Hz.

bandwidth_3db modülü — yükselme süresinden -3 dB bant genişliği türetimi.Ayrı bir frekans-süpürmesi grafiği gerekmez; temporal_response'tan okunan %10–%90 yükselme süresi (bkz. 2.1) tersine çevrilir.
- Yükselme süresi
t_ralınır (zaman serisinden %10–%90 seviyeleri okunarak). - Sonuç:
BW = 0.35 / t_r(tek-kutup/Gauss yaklaşımı); örn.t_r = 43.944 µs → BW ≈ 7965 Hz.
2.5 Spektral Duyarlılık — responsivity (Modül 4)
Dedektöre düşen her watt'lık ışık için ne kadar akım ürettiğini söyler — yani cihazın "ışığa duyarlılığını". Bir güneş panelinin aynı güneş altında ne kadar elektrik ürettiği gibi; aynı ışıkta daha çok akım üreten dedektör daha duyarlıdır.
Fiziksel arka plan: Her soğurulan foton en fazla bir elektron-deşik çifti üretir (kazanç yoksa), dolayısıyla akım ile optik güç doğru orantılıdır ve eğim duyarlılığı (R = I_photo/P) verir. Bir fotonun enerjisi E = hc/λ olduğundan, sabit güçte uzun dalga boyunda daha çok foton vardır; bu yüzden R, kuantum verimi sabit kalsa bile λ ile doğrusal artma eğilimindedir (R = EQE·qλ/hc) ta ki malzemenin bant aralığı aşılıp soğurma düşene kadar. R(λ) eğrisinin tepe yapıp sonra düşmesinin nedeni budur: kısa λ'da yüzey kaybı, uzun λ'da bant-aralığı kesimi.
- Neden yapılır: farklı dedektörlerin aynı ışık altında verimini karşılaştırmak, ölçüm zincirini kalibre etmek ve hangi renge en duyarlı olduğunu bulmak için.
- Ne öğretir / ne ölçer:
responsivity_a_w= A/W cinsinden duyarlılık (eğim);i_photo= net fotoakım;p_detector_w= aktif/spot alan ölçeklemesiyle gerçekten dedektöre düşen güç; spektral moddaresponsivity_peak_a_wvepeak_wavelength_nm= R(λ)'nın zirvesi ve onun dalga boyu. Örtülü EQE = R·1239.84/λ ile birim foton verimini de gösterir. - Tipik değerler ve yorumu: Si fotodiyot için görünür–yakın IR'de R ~0.3–0.6 A/W (zirve ~900 nm'de ~0.6); InGaAs için ~0.8–1.0 A/W (1550 nm). R'nin
qλ/hcsınırını (EQE=1) aşması ancak iç kazanç (APD, fototransistör) varsa olur, aksi halde ölçüm/güç hatasını işaret eder. - Sık hata / dikkat: en kritik girdi gelen güç
p_in_w'dir; yanlış/kalibrasyonsuz güç tüm R'yi ölçekler. Spot alan aktif alandan büyükse ışığın bir kısmı dedektöre düşmez — alan ölçeklemesi girilmezse R olduğundan küçük çıkar. EQE>%100 görürseniz (kazanç beklenmiyorsa) önce güç ve alanı kontrol edin. - Nerede kullanılır: dedektör seçimi, spektral karakterizasyon, kalibrasyon ve üretim kalite kontrolü.
Ne yapar: Fotoakım / gelen optik güçten duyarlılığı (responsivity) hesaplar; dalga-boyu tablosu varsa R(λ) eğrisi çıkarır.
Sütunlar: Gerekli: i. İsteğe bağlı: t, wavelength.
| Parametre | Birim | Açıklama | Varsayılan |
|---|---|---|---|
p_in_w | W | Gelen optik güç (ZORUNLU) | 1e-6 |
wavelength_nm | nm | Dalga boyu | 850.0 |
active_area_cm2 | cm² | Aktif alan | 0.0 |
spot_area_cm2 | cm² | Spot alanı | 0.0 |
Uygulanan formül: Dedektöre düşen güç P_det = P_in·(A_aktif/A_spot) (spot aktiften büyükse), aksi halde P_det = P_in. Sonra:
R = I_photo / P_det [A/W]
örtülü EQE = R · 1239.84 / λ (≤ 1, kazanç yoksa)
Çıktılar: i_photo [A], p_detector_w [W], responsivity_a_w [A/W]; spektral modda responsivity_peak_a_w, peak_wavelength_nm. Standart: IEC 60904-8.
Örnek / beklenen: 05_responsivity.csv (Si fotodiyot, 850 nm, P_in=1 µW). I_photo = 0.45·1 µW = 450 nA → R = 0.45 A/W, örtülü EQE = 65.6%.

responsivity modülü — A/W cinsinden duyarlılık ve gerekirse R(λ) spektral eğrisi.Net fotoakım I_photo, dedektöre düşen güç P_det'e karşı çizilir; doğrunun eğimi doğrudan duyarlılığı (A/W) verir.
- Birden çok güç noktası varsa
I_photo–P_detnoktalarına orijinden geçen doğru oturtulur. - Doğrunun eğimi alınır (tek nokta varsa
R = I_photo/P_dettek oranla bulunur). - Sonuç:
R = ΔI_photo/ΔP_det[A/W]; buradan örtülüEQE = R·1239.84/λtüretilir.

2.6 Kuantum Verimi — eqe_iqe (Modül 5)
Cihaza çarpan her 100 ışık parçacığından (foton) kaçının elektrik yüküne dönüştüğünü yüzde olarak söyler. 100 misafir davet edip kaçının içeri girdiğini saymak gibi — EQE çarpan fotonların tümünü baz alır, IQE ise kapıdan geri dönenleri (yansıyan ışığı) hesaba katarak içeri girenlerin "gerçek" oranını verir.
Fiziksel arka plan: Duyarlılık akımı watt'a bağlarken, kuantum verimi sayımı foton başına normalize eder: bir fotonun enerjisi hc/λ olduğundan EQE = R·(hc/qλ) = R·1239.84/λ[nm]. EQE, yansıyan + soğurulmayan + rekombine olan tüm kayıpları içerir; bu yüzden gerçek toplanan-yük verimini olduğundan düşük gösterebilir. IQE ise yalnızca içeri giren (soğurulan) fotonları baz alır: IQE = EQE/(1−R_refl). Dolayısıyla IQE her zaman EQE'den büyük (veya eşit) olur ve malzemenin "yansıma bir yana, soğurduğunu ne kadar iyi topladığı"nı söyler.
- Neden yapılır: cihazın ışığı yüke çevirmedeki temel veriminin fiziksel sınırı (her foton → bir yük) ne kadar zorladığını ve kaybın yansımadan mı yoksa toplama/rekombinasyondan mı olduğunu ayırmak için.
- Ne öğretir / ne ölçer:
eqe_pct= çarpan foton başına toplanan yük yüzdesi (dış);iqe_pct= yansıma çıkarıldıktan sonra soğurulan foton başına verim (iç);responsivity_a_wvewavelength_nm= hesabın girdileri.eqe_needs_reflection_correctionbayrağı IQE için yansıma verisinin gerektiğini belirtir. - Tipik değerler ve yorumu: iyi bir Si dedektör/hücre için zirve EQE %80–%95, IQE >%90 olabilir; yansıma-önler kaplama EQE'yi IQE'ye yaklaştırır. EQE veya IQE'nin %100'ü aşması (kazanç mekanizması yoksa) şüphelidir ve modül uyarı verir.
- Sık hata / dikkat: yanlış λ girmek EQE'yi doğrudan ölçekler (formül λ'ya ters orantılı); IQE'yi yansıma (
R_refl) girmeden "iç verim" sanmak; EQE>%100'ü kazanç zannetmek oysa çoğu zaman güç/alan/λ hatasıdır. - Nerede kullanılır: güneş hücresi/dedektör araştırması, malzeme ve yansıma-önler kaplama optimizasyonu, verim karşılaştırması.
Ne yapar: Dış (EQE) ve iç (IQE) kuantum verimini hesaplar.
Sütunlar: Gerekli sütun yok. İsteğe bağlı: i, t.
| Parametre | Birim | Açıklama | Varsayılan |
|---|---|---|---|
wavelength_nm | nm | Dalga boyu (ZORUNLU) | 850.0 |
responsivity_a_w | A/W | R (verilmezse veriden) | 0.0 |
reflectance | — | Yansıma oranı R_refl | 0.0 |
p_in_w | W | Gelen güç (R için) | 0.0 |
active_area_cm2 / spot_area_cm2 | cm² | Alan ölçekleme | 0.0 |
Uygulanan formül:
EQE = R · hc/(q·λ) = R · 1239.84 / λ[nm] (0..1)
IQE = EQE / (1 − R_refl)
R verilmezse veriden R = I_photo/P_det ile türetilir.
Çıktılar: responsivity_a_w, wavelength_nm, eqe_pct [%], iqe_pct [%]. Bayrak: eqe_needs_reflection_correction. Uyarı: EQE veya IQE > %100 ise (kazanç mekanizması yoksa şüpheli).
Örnek / beklenen: 06_eqe_iqe.csv (R=0.45 A/W, λ=850 nm, R_refl=%10). EQE = 65.64%, IQE = 65.64/0.9 = 72.94%.

eqe_iqe modülü — duyarlılık ve dalga boyundan EQE/IQE hesabı.Grafikten eğim/teğet alınmaz; duyarlılık R ve dalga boyu λ'dan doğrudan formülle hesaplanır.
- Duyarlılık
R(A/W) alınır (verilmezse veridenR = I_photo/P_det). - Sonuç:
EQE = R·1239.84/λ[nm](0..1); yansıma düzeltmesiyleIQE = EQE/(1 − R_refl).
2.7 Doğrusallık ve LDR — linearity_ldr (Modül 6)
Işığı iki katına çıkardığınızda akım da iki katına çıkıyor mu? Bu modül dedektörün gelen güçle ne kadar "dürüst orantılı" olduğunu ve hangi parlaklık aralığında güvenilir kaldığını ölçer. Bir terazinin hem bir gramı hem bir kiloyu doğru tartabilmesi gibi — geniş bir aralıkta orantı bozulmamalı.
Fiziksel arka plan: İdeal bir dedektörde fotoakım gelen güçle birebir orantılıdır (I ∝ P¹), çünkü iki kat foton iki kat taşıyıcı üretir. Gerçekte tuzaklar düşük güçte doyduğunda veya yüksek güçte rekombinasyon arttığında orantı bozulur; ilişki kuvvet-yasası I = C·P^α ile özetlenir ve log-log grafikte bu bir doğru olur, eğimi α'dır. α=1 mükemmel doğrusal; α<1 (alt-doğrusal) yük tuzaklanması/rekombinasyon; α>1 (üst-doğrusal) bir kazanç mekanizmasını gösterir. Cihazın orantıyı koruduğu en küçük ile en büyük güç arasındaki açıklık, doğrusal dinamik aralıktır (LDR).
- Neden yapılır: dedektörün hangi ışık aralığında ölçüme güvenilebileceğini ve nerede doyuma/tuzaklanmaya/kazanca girdiğini bulmak için.
- Ne öğretir / ne ölçer:
linearity_alpha= kuvvet-yasası üssü α (rejim göstergesi);powerlaw_coeff= katsayı C (ölçek);linearity_r2= log-log fitin kalitesi;ldr_db = 20·log10(P_max/P_min)= doğrusal dinamik aralık;p_min_w/p_max_w= aralığın uçları. - Tipik değerler ve yorumu: iyi bir dedektörde 0.95 ≤ α ≤ 1.05 ve LDR onlarca–100+ dB (birkaç dekat) olur; α=0.5 gibi değerler güçlü tuzaklanma rejimini gösterir. R²<0.999 ise tüm aralık tek bir doğrusal yasaya uymuyordur (uçlarda kıvrılma).
- Sık hata / dikkat: doğrusallığı normal (lineer) eksende "gözle" değerlendirmek — mutlaka log-log bakılmalı; birkaç noktayla geniş LDR iddia etmek; en parlak noktada dedektör doyup α'yı düşürürken bunu malzeme kusuru sanmak. LDR dekat sayısıyla değil 20·log10 ile dB'ye çevrilir (1 dekat = 20 dB).
- Nerede kullanılır: ölçüm cihazı kalibrasyonu, sensör çalışma aralığı tanımı ve kazanç/tuzaklanma davranışı tespiti.
Ne yapar: Foto-akımın gelen güce kuvvet-yasası bağımlılığını ve doğrusal dinamik aralığı (LDR) çıkarır.
Sütunlar: Gerekli: p_in, i. Parametre yok.
Uygulanan formül: Log-log kuvvet-yasası fiti I = C · P^α; sonra:
Rejim sınıflandırması: 0.95 ≤ α ≤ 1.05 doğrusal; α < 0.95 alt-doğrusal (trapping); α > 1.05 üst-doğrusal (kazanç).
Çıktılar: linearity_alpha, powerlaw_coeff (C), linearity_r2, ldr_db [dB], p_min_w, p_max_w [W]. Uyarı: R² < 0.999 ise tam aralık doğrusal değil. Standart: IEC 60904-10.
Örnek / beklenen: 07_linearity_ldr.csv (5 dekat, α=1). α = 1.0, LDR = 20·log10(1e5) = 100 dB, C = 0.45.

linearity_ldr modülü — log-log kuvvet-yasası fiti ve dB cinsinden LDR.I–P verisi log–log eksende çizilir; kuvvet-yasası I = C·P^α burada bir doğruya dönüşür.
- log–log noktalara (
log I'ye karşılog P) doğru oturtulur. - Doğrunun eğimi üssü verir:
α = Δ(log I)/Δ(log P); kesişimden katsayıCokunur. - Sonuç: doğrusallığın korunduğu uçlardan
LDR[dB] = 20·log10(P_max/P_min);0.95 ≤ α ≤ 1.05doğrusal kabul edilir.

2.8 NEP ve Detektivite — nep_detectivity (Modül 7)
Bir dedektörün algılayabileceği "en zayıf ışık" ne kadardır? Bu modül cihazın kendi gürültüsünü ölçüp bu gürültüye eşit sinyal üreten ışık gücünü (NEP) ve boyuttan bağımsız bir kalite notunu (D*) hesaplar. Gürültülü bir ortamda duyabileceğiniz en kısık sesi belirlemek gibi — cihaz ne kadar sessizse o kadar zayıf sinyali yakalar.
Fiziksel arka plan: Bir dedektörün tabanında daima rastgele akım dalgalanması vardır (karanlık akımdan gelen shot gürültüsü √(2qIΔf) ve şönt direncinden gelen Johnson/termal gürültü √(4k_BTΔf/R)). Bir sinyali ancak bu gürültü zemininin üstüne çıkarabildiğinizde "gördünüz" demektir; gürültüye eşit akım üreten optik güç, gürültü-eşdeğer güçtür (NEP = i_noise/R). Daha büyük alan veya daha geniş bant daha çok gürültü topladığından, cihazları adil kıyaslamak için bunları normalize eden özgül detektivite D* = R·√(A·Δf)/i_noise tanımlanır — D* ne kadar büyükse cihaz o kadar hassastır.
- Neden yapılır: dedektörün hassasiyet sınırını (algılanabilir en zayıf ışık) belirlemek ve farklı boyut/bant/teknolojideki cihazları adil kıyaslamak için.
- Ne öğretir / ne ölçer:
nep_w_sqrthz= bant-normalize gürültü-eşdeğer güç (küçük = hassas);nep_total_w= tüm bantta toplam NEP;detectivity_jones= alan/bant normalize D* (büyük = iyi);noise_density_a_sqrthz= akım gürültü yoğunluğu;shot_noise_a/thermal_noise_avenoise_dominant= hangi gürültü mekanizmasının baskın olduğu. - Tipik değerler ve yorumu: oda sıcaklığı Si/InGaAs için D* ~10¹¹–10¹³ Jones gerçekçidir; soğutmalı IR dedektörler 10¹⁰–10¹² mertebesinde olur. D*>10¹⁴ Jones (kazanç yoksa) fiziksel olarak şüphelidir ve modül uyarı verir; NEP ne kadar küçükse cihaz o kadar zayıf ışığı seçebilir.
- Sık hata / dikkat: R (duyarlılık) ZORUNLU girdidir; yanlış R, NEP ve D*'yi doğrudan ölçekler. Bant genişliği Δf ve alan A girilmezse karşılaştırma anlamsızlaşır. NEP (W/√Hz) ile NEP_total (W) karıştırılmamalı; çok küçük D* değerleri anlamlı-basamak yuvarlamasıyla korunur (ondalık yuvarlama 0 gösterirdi).
- Nerede kullanılır: düşük-ışık/kızılötesi dedektör seçimi, performans sıralaması ve gürültü kaynağı (shot vs termal) tanısı.
Ne yapar: Karanlık-akım gürültü serisinden gürültü-eşdeğer gücü (NEP) ve özgül detektiviteyi (D*) hesaplar.
Sütunlar: Gerekli: i_dark. İsteğe bağlı: t, i.
| Parametre | Birim | Açıklama | Varsayılan |
|---|---|---|---|
responsivity_a_w | A/W | R (ZORUNLU) | 1.0 |
active_area_cm2 | cm² | Aktif alan | 0.01 |
bandwidth_hz | Hz | Ölçüm bant genişliği Δf | 1.0 |
temperature_k | K | Sıcaklık | 300.0 |
shunt_resistance_ohm | Ω | Shunt direnci (termal gürültü) | 0.0 |
Uygulanan formül: σ = std(I_dark); bant ölçekli RMS akım:
i_noise = σ · sqrt( Δf / (f_s/2) )
noise_density = i_noise / sqrt(Δf) [A/√Hz]
NEP = noise_density / R [W/√Hz]
NEP_total = i_noise / R [W]
D* = R · sqrt(A·Δf) / i_noise [Jones]
i_shot = sqrt( 2·q·|I_dark| · Δf )
i_thermal = sqrt( 4·k_B·T·Δf / R_shunt )
Baskın gürültü: i_shot ≥ i_thermal ise shot, aksi halde thermal.
Çıktılar: i_dark_mean, i_noise_a, noise_density_a_sqrthz, nep_w_sqrthz, nep_total_w, detectivity_jones [Jones], bandwidth_hz, shot_noise_a, thermal_noise_a, noise_dominant. Bayrak: nep_reliable. Uyarı: D* > 1e14 Jones (Si/InGaAs için şüpheli). Standart: GUM. Çok küçük değerler anlamlı-basamak yuvarlaması ile korunur (ondalık yuvarlama 0'a indirirdi).
Örnek / beklenen: 08_nep_detectivity.csv (I_dark ortalama 1 nA, σ≈1 pA, f_s=1 kHz, R=0.45 A/W, A=0.01 cm², Δf=1 Hz). D* ≈ 1e12 Jones (gerçekçi Si).

nep_detectivity modülü — gürültü-eşdeğer güç ve Jones cinsinden detektivite.Grafikten eğim alınmaz; karanlık-akım serisinin standart sapması σ ölçülüp duyarlılık R ile ölçeklenir.
- Karanlık bölgenin gürültüsü
σ = std(I_dark)ve bant-ölçekli RMS akımi_noisehesaplanır. - Sonuç:
NEP = (i_noise/√Δf)/R[W/√Hz];D* = R·√(A·Δf)/i_noise[Jones].
2.9 Gürültü PSD — noise_psd (Modül 9)
Her cihazın gürültüsü vardır, ama bu gürültü tek tip değildir; farklı frekanslarda farklı kaynaklardan gelir. Bu modül gürültüyü frekansa göre parçalara ayırıp hangi mekanizmanın baskın olduğunu (1/f flicker, shot, termal) söyler. Bir orkestradaki uğultuyu dinleyip "bu daha çok bas davuldan mı yoksa kemanlardan mı geliyor?" diye ayırmak gibi.
Fiziksel arka plan: Karanlık-akım zaman serisini frekansa dönüştürdüğünüzde (PSD), farklı gürültü mekanizmaları farklı imzalar bırakır. Shot ve termal gürültü tüm frekanslarda düz bir "beyaz" zemin verir (frekanstan bağımsız); buna karşılık tuzakların yakala-bırak dinamiğinden doğan flicker gürültüsü düşük frekansta büyük olup frekansla 1/f^γ şeklinde azalır. Bu yüzden log-log PSD grafiğinde düşük frekansta eğimli (1/f) bir bölge, yüksek frekansta düz bir zemin görürsünüz; ikisinin kesiştiği "köşe frekansı", flicker'ın beyaz zemine gömüldüğü noktadır. Köşeden yukarıda çalışmak gürültüyü en aza indirir.
- Neden yapılır: gürültünün kök nedenini (tuzak-baskın mı, temel shot/termal mi) bulup doğru iyileştirmeyi (filtreleme, çalışma frekansı seçimi, malzeme/proses) yapabilmek için.
- Ne öğretir / ne ölçer:
flicker_gamma= düşük-f eğimi γ (1'e yakınsa klasik 1/f);corner_freq_hz= flicker'ın beyaz zemine indiği köşe frekansı;white_floor_a2_hz= beyaz gürültü zemini;shot_level_a2_hz/thermal_level_a2_hz= teorik shot/termal seviyeleri;low_freq_fit_r2venoise_dominant= fit kalitesi ve baskın mekanizma. - Tipik değerler ve yorumu: γ≈1 saf 1/f flicker (tuzak/kusur baskın); γ≈0 beyaz (shot/termal baskın). Düşük köşe frekansı = temiz, düşük-tuzaklı malzeme; yüksek köşe = düşük frekanslarda çalışmanın zor olduğu, kusur-yoğun cihaz. Ölçülen beyaz zeminin teorik shot seviyesine yakın olması cihazın temel-sınıra ulaştığını gösterir.
- Sık hata / dikkat: örnekleme frekansı (
sampling_hz) yanlışsa tüm frekans ekseni kayar; çok kısa seri düşük frekansları çözemez (köşe görünmez). PSD'yi lineer eksende okumak 1/f bölgesini gizler; γ'yı tek başına değil köşe frekansı ve fit R²'siyle birlikte yorumlayın. - Nerede kullanılır: düşük-gürültü dedektör/devre tasarımı, malzeme/proses kalite tanısı ve çalışma bandı optimizasyonu.
Ne yapar: Karanlık-akım serisinin güç spektral yoğunluğunu (PSD) hesaplar; 1/f^γ flicker, shot ve termal mekanizmaları ayırır.
Sütunlar: Gerekli: i_dark. İsteğe bağlı: t, i. Parametreler: sampling_hz (0 ise zaman ekseninden), temperature_k=300, shunt_resistance_ohm=0.
Uygulanan formül: PSD periyodogramdan; düşük-f bölgesinde (ilk %40) log-log doğrusal fit ile eğim; γ = −eğim. Beyaz zemin = üst %30'un medyanı. Köşe frekansı, fit doğrusunun beyaz zemini kestiği yer:
shot_level = 2·q·|I_mean| [A²/Hz]
thermal_level = 4·k_B·T / R_shunt [A²/Hz]
Baskın: γ > 0.5 ise flicker (1/f), aksi halde shot/thermal.
Çıktılar: flicker_gamma, low_freq_fit_r2, white_floor_a2_hz, corner_freq_hz [Hz], shot_level_a2_hz, thermal_level_a2_hz, noise_dominant.
Örnek / beklenen: 09_noise_psd.csv (hedef PSD S(f) = S_w·max(f_c/f, 1), S_w=1e-22 A²/Hz, f_c=200 Hz). γ = 1.0, floor = 1e-22, corner = 200 Hz, baskın = "flicker (1/f)".

noise_psd modülü — 1/f flicker, shot ve termal gürültü mekanizmalarının ayrımı.PSD log–log eksende çizilir; düşük-frekans (ilk %40) bölgesine doğru oturtulup eğim alınır.
- Düşük-f noktalarına (
log S'ye karşılog f) doğru oturtulur; eğimin negatifi üssü verir:γ = −eğim. - Sonuç: beyaz zemin (üst %30'un medyanı) ile fit doğrusunun kesiştiği yer köşe frekansı'dır.
2.10 PWM Sürücü Analizi — pwm_analysis (Modül 10)
LED gibi ışık kaynakları çoğu zaman çok hızlı aç-kapa (PWM) sinyaliyle sürülür; gözün göremediği bu titreşimin frekansı, ne kadarının "açık" olduğu (görev çevrimi) ve ne kadar temiz olduğu önemlidir. Bu modül sürücü sinyalini ölçer ve dedektör yanıtı varsa aradaki gecikmeyi bulur. Bir kalbin atış hızını ve düzenini EKG ile okumak gibi.
Fiziksel arka plan: PWM'de ortalama parlaklık, sabit genlikli darbenin ne kadarının "açık" olduğuna (görev çevrimi) orantılıdır; göz bunu sürekli ışık gibi algılar ama sinyal aslında kare dalgadır. Modül yükselen kenarlar arası süreden frekansı, açık kalma oranından duty'yi, açık seviyedeki tepe-tepe oynamadan ripple'ı çıkarır; ideal bir kare dalga FFT'de bir temel frekans ve onun harmoniklerinden oluşur, bozulma arttıkça (yamuk kenar, çınlama) harmonik içeriği (THD) büyür. Dedektör yanıtı da varsa, sürücü ile yanıt arasındaki zaman kayması sistemin tepki gecikmesini/fazını verir.
- Neden yapılır: sürücü sinyalinin doğru frekans/parlaklıkta ve bozulmasız olduğunu doğrulamak ve sürücü→dedektör sistem gecikmesini ölçmek için.
- Ne öğretir / ne ölçer:
frequency_hz(±frequency_std_hzkararlılık) = darbe frekansı;duty_cycle= açık kalma oranı (ortalama parlaklık);ripple_pp= açık seviyedeki tepe-tepe dalgalanma;thd= harmonik bozulma (sinyalin "temizliği");v_high/v_low= seviyeler; yanıt varsaresponse_delay_s/response_phase_deg= gecikme/faz. - Tipik değerler ve yorumu: kırpışmasız görünür aydınlatma için frekans ≳ birkaç yüz Hz–kHz tercih edilir; duty istenen parlaklığa eşlenir (ör. %30 = sönük); düşük ripple ve düşük THD temiz bir sürücü demektir.
frequency_stdbüyükse sürücü kararsızdır (jitter). - Sık hata / dikkat: eşik (
v_high/v_low) gürültülü sinyalde yanlış otomatik bulunursa duty/frekans kayar; örnekleme darbe genişliğine göre çok seyrekse duty ve THD güvenilmez olur. Yanıt gecikmesini ölçerken sürücü ve yanıtın aynı zaman ekseninde olması gerekir. - Nerede kullanılır: LED sürücü doğrulama, optik sistem zamanlaması ve kontrol elektroniği kalite kontrolü.
Ne yapar: Bir sürücü (PWM) sinyalinden frekans, görev çevrimi (duty), dalgalanma (ripple) ve THD çıkarır; dedektör yanıt sinyali varsa gecikme/faz korelasyonu yapar.
Sütunlar: Gerekli: t, v_drive. İsteğe bağlı: v_response, i_drive. Parametreler: v_high, v_low (0 ise sırasıyla %95/%5 yüzdelikten otomatik).
Uygulanan formül: Eşik 0.5·(V_high+V_low); yükselen kenarlar arası periyottan f = 1/⟨T⟩; her periyotta duty = t_on/T; ripple = yüksek seviye tepe-tepe; THD FFT temel ve harmoniklerinden.
Çıktılar: frequency_hz, frequency_std_hz, duty_cycle, ripple_pp, thd, n_periods, v_high, v_low; response_delay_s, response_phase_deg (yanıt varsa).
Örnek / beklenen: 10_pwm_analysis.csv (ideal kare dalga, 10 periyot). f = 1000 Hz, duty = %30, V_high = 5 V, V_low = 0 V.

pwm_analysis modülü — frekans, görev çevrimi, ripple ve THD; yanıt varsa faz/gecikme.3. Fotovoltaik (PV) Analiz Modülleri
3.1 MPPT / Dolum Faktörü / PCE — mppt_analysis (Modül 11)
Bir güneş hücresinin ürettiği gücün gerilime göre nasıl değiştiğini alıp "en çok gücü hangi noktada verir ve verimi yüzde kaçtır?" sorusunu hızlıca yanıtlar. Bir bisikletin en verimli vites/pedal hızını bulmak gibi — belirli bir nokta en yüksek gücü verir.
Fiziksel arka plan: Güneş hücresi, ışıkla beslenen bir akım kaynağına paralel bir diyottur; gerilim artarken diyot iletime geçip ürettiği akımın bir kısmını içeride yutar. Güç P = V·I olduğundan, V=0'da (I=I_sc) güç sıfır, I=0'da (V=V_oc) yine sıfırdır; arada bir yerde bir tepe oluşur — işte maksimum güç noktası (MPP). Bu yüzden P-V eğrisi tek tepeli bir dağdır ve hücreyi her zaman bu tepede çalıştırmak istersiniz. Dolum faktörü, bu gerçek tepenin ideal "dikdörtgen" güce (V_oc·I_sc) ne kadar yaklaştığını söyler; J-V eğrisinin köşesi ne kadar keskinse FF o kadar yüksektir.
- Neden yapılır: hücrenin maksimum güç noktasını ve genel kalitesini ayrıntılı motora girmeden hızlı bir bakışta görmek için.
- Ne öğretir / ne ölçer:
p_max_w,v_mpp_v,i_mpp_a= MPP'deki güç ve onu veren gerilim/akım;v_oc_v/i_sc_a= açık-devre gerilimi ve kısa-devre akımı;fill_factor = P_max/(V_oc·I_sc)= eğrinin dikdörtgenliği;pce_pct = P_max/(P_in·A)·100= güç dönüşüm verimi. - Tipik değerler ve yorumu: sağlıklı hücrede FF 0.7–0.85 (yüksek = düşük Rs, yüksek Rsh); FF<0.5 yüksek seri direnç veya düşük şönt direnci işaretidir. V_mpp daima V_oc'nin altındadır; FF>1 fiziksel olarak imkânsızdır ve V_oc/I_sc'nin yanlış olduğunu gösterir (modül uyarı verir).
- Sık hata / dikkat: bu "hızlı" çekirdektir — Rs/Rsh, STC rozeti ve ince-grid MPP için ayrıntılı
pv_metricskullanın. İşaret konvansiyonu yanlışsa güç tepesi negatif kadranda kalıp P_max bulunamaz; PCE için gelen güçp_in_wve alan girilmezse verim hesaplanmaz. - Nerede kullanılır: güneş hücresi hızlı tarama, üretim hattı eleme ve eğitim/laboratuvar gösterimi.
Ne yapar: Bir P-V (veya I-V) eğrisinden maksimum güç noktasını, dolum faktörünü ve verimi çıkarır (hızlı, basit çekirdek).
Sütunlar: Gerekli: v, i.
| Parametre | Birim | Açıklama | Varsayılan |
|---|---|---|---|
v_oc | V | Açık devre gerilimi (0 ise veriden) | 0.0 |
i_sc | A | Kısa devre akımı (0 ise veriden) | 0.0 |
p_in_w | W | Gelen güç (PCE için) | 0.0 |
cell_area_cm2 | cm² | Hücre alanı | 0.0 |
Uygulanan formül: P = V·I; P_max = max(P) (gerekirse işaret düzeltilir); V_mpp, I_mpp MPP'de; FF = P_max/(V_oc·I_sc); PCE = P_max/(P_in·A)·100.
Çıktılar: p_max_w, v_mpp_v, i_mpp_a, v_oc_v, i_sc_a, fill_factor, pce_pct. Uyarı: FF > 1 ise V_oc/I_sc kontrol.
Örnek / beklenen: 11_mppt_analysis.csv (ideal diyot: Isc=30 mA, I0=1 nA, n=1.5). V_oc = V_t·ln(Isc/I0+1) = 0.668 V, FF ≈ 0.80, PCE ≈ %16.

mppt_analysis modülü — P-V eğrisinden MPP, dolum faktörü ve verim.3.2 Güneş Hücresi J-V Metrikleri — pv_metrics (Modül 12)
Bir güneş hücresine gerilim uygulayıp akımını ölçerek (J-V taraması) çıkarılan bütün standart performans karnesini hesaplar. Bir öğrencinin tek bir sınavdan tüm ders notlarını çıkarmak gibi — tek tarama, hücrenin tam performans tablosunu verir.
Fiziksel arka plan: Aydınlatılmış J-V eğrisi, karanlık diyot eğrisinin foto-akım kadar aşağı kaydırılmış halidir; bu yüzden dördüncü kadranda (pozitif V, negatif I — yani güç üreten bölge) karakteristik "diz" şeklini alır. Dizin keskinliği iki parazit dirence bağlıdır: seri direnç Rs (kontak/şerit kayıpları) eğrinin V_oc yakınındaki eğimini yatırır, şönt direnci Rsh (sızıntı/kısa-yollar) V=0 yakınındaki eğimi dikleştiremez. Modül bu bölgesel eğimlerden Rs ve Rsh'yi okur; alanla normalize edilen J_sc ve gelen güçle hesaplanan PCE ile sonuç STC (1000 W/m², 25 °C) altında karşılaştırılabilir hale gelir.
- Neden yapılır: bir hücrenin verimini ve kalitesini standartlara (IEC) uygun, alanla normalize edilmiş ve karşılaştırılabilir biçimde belgelemek için.
- Ne öğretir / ne ölçer:
v_oc_v= ışık üretiminin diyot kaybına eşitlendiği gerilim;j_sc_ma_cm2= alana bölünmüş kısa-devre akım yoğunluğu;fill_factor= dizin dikdörtgenliği;pce_pct= verim;r_s_ohm= V_oc üstü eğimden seri direnç (düşük iyi);r_sh_ohm= V=0 yakını eğimden şönt direnci (yüksek iyi);metrics_resolved= güvenilirlik bayrağı. - Tipik değerler ve yorumu: iyi laboratuvar Si hücresinde V_oc ~0.6–0.7 V, J_sc ~30–40 mA/cm², FF 0.75–0.83, PCE ~%15–%22; Rsh yüksek (kΩ–MΩ·cm²) ve Rs düşük (<birkaç Ω·cm²) olmalı. Düşük FF + düşük Rsh = sızıntı; düşük FF + yüksek Rs = kontak/iletim kaybı.
- Sık hata / dikkat: irradiance/temperature/active_area girilmezse rozet
non_stcolur ve PCE karşılaştırılamaz; işaret konvansiyonu yanlışsa V_oc/I_sc ters bulunur (modül otomatik tespit etse de kontrol edin). 1000 W/m² altındaPCE[%] = J_sc·V_oc·FFeşitliği tutarlılığı doğrulamanın hızlı yoludur. - Nerede kullanılır: güneş hücresi araştırması, sertifikasyon öncesi ölçüm ve üretim kalite kontrolü.
Ne yapar: Tek bir J-V taramasından tüm performans metriklerini hesaplar (Solarcell 4.8 çekirdeği ile parite).
Sütunlar: Gerekli: v, i.
| Parametre | Birim | Açıklama | Varsayılan |
|---|---|---|---|
cell_area_cm2 | cm² | Hücre alanı | 1.0 |
irradiance_w_m2 | W/m² | Işınım (STC) | 1000.0 |
convention | — | İşaret konvansiyonu (auto/photovoltaic/device) | auto |
v_oc, i_sc | V, A | Elle geçersiz kılma | 0.0 |
Uygulanan formül: İşaret konvansiyonu güç-kadranı integraliyle otomatik tespit; V_oc = akımın kalıcı ilk sıfır geçişi; I_sc = V=0'daki akım; MPP ince gridde (4000 nokta) P=V·I maksimumu.
FF = P_max / (V_oc · I_sc)
PCE = P_max / P_in · 100, P_in = E · (A · 1e-4) [E: W/m², A: cm²]
J_sc = I_sc · 1e3 / A [mA/cm²]
R_s Voc üstü pencerede [V_oc, V_oc+0.05] lineer fit; R_sh V=0 ± 0.05 V penceresinde.
Çıktılar: v_oc_v, i_sc_a, j_sc_ma_cm2, v_mpp_v, i_mpp_a, p_max_w, fill_factor, pce_pct, r_s_ohm, r_sh_ohm. Bayrak: metrics_resolved (güvenilirliği belirler). Provenance koşulları: irradiance, temperature, active_area (eksikse rozet non_stc). Standartlar: IEC 60904-1, IEC 60904-3, GUM.
Örnek / beklenen: 12_pv_metrics.csv (Iph=30 mA/cm², I0=1 nA, n=1.5, Rs=1 Ω, Rsh=10 kΩ, 1 cm² @ 1000 W/m²). J_sc = 30 mA/cm², V_oc ≈ 0.696 V, FF ≈ 0.755, PCE ≈ %15.8, R_s ≈ 1 Ω, R_sh ≈ 10 kΩ.
PCE[%] = J_sc[mA/cm²]·V_oc[V]·FF eşitliği geçerlidir (/P_in·100 sadeleşir); bu, FF ve PCE'nin tutarlılığını hızlıca doğrulamanın pratik yoludur.
pv_metrics modülü — tek J-V taramasından V_oc, J_sc, FF, PCE, Rs/Rsh.Aydınlık J-V eğrisi kullanılır; güç üreten kadranda MPP dikdörtgeni ve uçlardaki eğimler okunur.
V_oc(akımın sıfır geçişi) veI_sc(V=0'daki akım) işaretlenir;P=V·Imaksimumu MPP'yi (V_mpp, I_mpp) verir.- Gerçek MPP dikdörtgeni (V_mpp·I_mpp), ideal
V_oc·I_scdikdörtgenine oranlanır. - Sonuç:
FF = P_max/(V_oc·I_sc);V_ocyakını eğim →R_s,V=0yakını eğim →R_sh.

3.3 J-V Histerezisi — pv_hysteresis (Modül 13)
Aynı güneş hücresini ileri ve geri yönde tararsanız iki eğri çoğu zaman birebir çakışmaz; aralarındaki fark "histerezis"tir ve çoğu kez kararsızlığın işaretidir. Bu modül bu farkı sayısal bir indekse çevirir. Bir yokuşu çıkarken ve inerken farklı yorulmanız gibi — yön değişince davranış değişiyorsa bir şeyler oynuyordur.
Fiziksel arka plan: Histerezis, cihazda taramaya yetişemeyen yavaş bir iç sürecin (özellikle perovskitlerde iyon göçü, ayrıca tuzak doldurma/boşaltma ve arayüz kapasitansı) varlığından doğar. Tarama yönüne göre bu yavaş yükler eğriyi farklı yerde "yakaladığı" için ileri ve geri J-V eğrileri ayrışır ve aralarında bir alan kalır; genelde geri (V_oc→0) tarama daha iyi (yüksek) PCE verir. Histerezis indeksi bu ayrışmayı ölçer: PCE tabanlı indeks iki verim arasındaki göreli farkı, alan tabanlı indeks ise iki eğri arasındaki bütün alanı niceler.
- Neden yapılır: ölçülen verimin "gerçek/kararlı" mı yoksa tarama yönüne ve hızına bağlı yanıltıcı mı olduğunu ve cihazın kararlılığını anlamak için.
- Ne öğretir / ne ölçer:
pce_fwd_pct/pce_rev_pct= ileri ve geri tarama verimleri;hysteresis_index= PCE tabanlı indeks(PCE_rev−PCE_fwd)/PCE_rev;hysteresis_index_area= iki eğri arasındaki normalize alan. - Tipik değerler ve yorumu: kararlı Si/inorganik hücrelerde HI ≈ %0–birkaç %; perovskitlerde onlarca % olabilir. Pozitif ve küçük HI tolere edilebilir; büyük HI rapor edilen verimin tek-yön taramayla şişirilebileceği uyarısıdır. İdeali, sabitlenmiş güç çıkışıyla (MPP tracking) çapraz doğrulamaktır.
- Sık hata / dikkat: tek-yön tarama yükleyip histerezisi "yok" sanmak (modül çift-yönlü tek dosya bekler); dönüş noktasının yanlış tespiti segment ayrımını bozar; tarama hızı raporlanmadan HI'yı mutlak gerçek saymak — histerezis hıza bağlıdır, bu yüzden hızı sabitlemeden cihazlar kıyaslanmamalı.
- Nerede kullanılır: perovskit/yeni nesil hücre araştırması, kararlılık değerlendirmesi ve ölçüm protokolü doğrulama.
Ne yapar: İleri ve geri taramalar arasındaki uyumsuzluğu (histerezis indeksi) çıkarır.
Sütunlar: Gerekli: v, i (çift-yönlü tek dosya). Parametreler: cell_area_cm2, irradiance_w_m2, convention.
Uygulanan formül: Gerilim dönüş noktasından ileri/geri segmentlere bölünür; her segment için PCE hesaplanır.
HI_PCE = (PCE_rev − PCE_fwd) / PCE_rev
HI_alan = ∫|I_rev − I_fwd| dV / ∫|I_rev| dV (0..V_oc gridi)
Çıktılar: pce_fwd_pct, pce_rev_pct, hysteresis_index, hysteresis_index_area.
Örnek / beklenen: 13_pv_hysteresis.csv (ileri I0=2 nA bozulmuş, geri I0=1 nA). PCE_fwd < PCE_rev, HI ≈ %5 (pozitif, küçük).

pv_hysteresis modülü — ileri/geri tarama uyumsuzluğundan histerezis indeksi.3.4 Karanlık J-V İdealite — pv_diode (Modül 14)
Hücreyi karanlıkta (ışıksız) ölçüp bir diyot gibi davranışını inceleyerek "içinde ne tür kayıplar var?" sorusunu yanıtlar. İdealite faktörü n, hücredeki rekombinasyon mekanizmasının bir parmak izidir. Motoru çalıştırmadan boşta dinleyip arızayı teşhis etmek gibi.
Fiziksel arka plan: Karanlıkta hücre saf bir diyottur ve ileri akımı gerilimle üstel artar: I = I0·[exp(qV/nkT)−1]. ln(I)'yi V'ye karşı çizdiğinizde bu üstel bölge bir doğruya dönüşür; doğrunun eğimi q/(nkT) idealite faktörünü, kesim noktası doyma akımı I0'ı verir. Bu yüzden semilog J-V'de orta gerilim bölgesi düz olmalıdır; çok düşük gerilimde şönt sızıntısı (Rsh) bu doğruyu aşağıdan büker, çok yüksek gerilimde seri direnç (Rs) eğriyi düzleştirir. Modül fiti tam da bu temiz orta pencerede yapar.
- Neden yapılır: hücrenin temel diyot kalitesini ve baskın rekombinasyon/kayıp mekanizmasını ışık etkisinden bağımsız görmek için.
- Ne öğretir / ne ölçer:
ideality_factor= n, iletim/rekombinasyon parmak izi;saturation_current_a= I0, diyotun ne kadar "sızdırdığı";r_s_ohm= yüksek-V'de seri direnç;r_sh_ohm= düşük-V'de şönt direnci;fit_r2= semilog doğru fitinin kalitesi. - Tipik değerler ve yorumu: n≈1 difüzyon (bant-bant) baskın, ideal; n≈2 tüketim-bölgesi (SRH/tuzak) rekombinasyonu baskın; 1<n<2 karışık. n>2 ciddi kusur/arayüz sorunu veya kötü fiti gösterir. Düşük I0 = iyi diyot. Modül n∉[0.8,10] veya R²<0.98 olunca uyarır.
- Sık hata / dikkat: fit penceresini (
v_fit_min/v_fit_max) Rsh-bükümlü veya Rs-düzleşmiş bölgeye taşırsak n yapay olarak büyür; sıcaklığı yanlış girmek eğim→n çevrimini bozar (kT/qölçeği). n'i tek başına değil R² ile birlikte okuyun. Bu modül fizik tutarlılığı içinDiodeAnalysisEngine'i kullanır, böylece Diode/Schottky modülleriyle metrik kayması olmaz. - Nerede kullanılır: hücre kalite tanısı, üretim sürecinde kayıp kaynağı tespiti ve malzeme karşılaştırması.
Ne yapar: Karanlık J-V'den diyot idealite faktörü n, doyma akımı I0 ve Rs/Rsh çıkarır. Fizik tek kaynak: DiodeAnalysisEngine (Diode/Schottky modülleriyle metrik sürüklenmesi olmaz).
Sütunlar: Gerekli: v, i.
| Parametre | Birim | Açıklama | Varsayılan |
|---|---|---|---|
temperature_k | K | Sıcaklık | 300.0 |
v_fit_min | V | Fit alt sınırı | 0.05 |
v_fit_max | V | Fit üst sınırı | 0.5 |
cell_area_cm2 | cm² | Hücre alanı | 1.0 |
Uygulanan formül: ln(I) = ln(I0) + qV/(nkT) doğrusal fiti; eğim = q/(nkT) → n; kesim → I0. Rs Cheung yöntemiyle, Rsh düşük-V şuntundan.
Çıktılar: ideality_factor, saturation_current_a [A], r_s_ohm, r_sh_ohm [Ω], fit_r2. Bayrak: ideality_resolved. Uyarı: n ∉ [0.8, 10] veya R² < 0.98.
Örnek / beklenen: 14_pv_diode_dark.csv (I0=1 nA, n=1.5, Rs=1 Ω, Rsh=1 GΩ; fit 0.05–0.5 V). n = 1.5, I0 = 1 nA, R² ≈ 1.

pv_diode modülü — karanlık J-V'den idealite faktörü n, I0 ve Rs/Rsh.Karanlık eğri yarı-logaritmik (ln I–V) çizilir; orta-gerilimdeki üstel bölge bir doğruya dönüşür.
- Temiz orta pencereye (
v_fit_min..v_fit_max)ln I–Vdoğrusu oturtulur (düşük-V'de Rsh bükümü, yüksek-V'de Rs düzleşmesi dışlanır). - Doğru
V=0'a uzatılarak (ekstrapolasyon) y-kesişiminden doyma akımı okunur. - Sonuç:
eğim = q/(nkT)→n = q/(kT·eğim); kesişim →I_0.

3.5 Eşdeğer Devre Çıkarımı — pv_equivalent_circuit (Modül 14b)
Bir güneş hücresini, beş temel elektriksel parçadan (akım kaynağı, diyot, iki direnç) oluşan basit bir devreyle temsil eder ve tüm I-V eğrisini bu modele aynı anda oturtarak parçaların değerlerini tek seferde bulur. Karmaşık bir cihazın iç şemasını dışarıdan ölçümlerle yeniden çizmek gibi.
Fiziksel arka plan: Tek-diyot model, hücreyi şöyle tarif eder: ışık bir akım kaynağı Iph üretir, bunun bir kısmını paralel diyot (I0, n) yutar, şönt direnci Rsh sızdırır ve seri direnç Rs çıkışı düşürür. Bu beş parça aynı J-V eğrisinin farklı bölgelerini şekillendirir (Iph yüksekliği, diyot dizi, Rsh düşük-V eğimi, Rs V_oc eğimi). Tek tek bölgesel eğim almak yerine modül, Lambert-W kapalı çözümüyle tüm eğriyi tek bir denkleme nonlineer fitler; böylece parametreler birbirinin etkisini doğru hesaba katar ve fit kovaryansından her birinin 1σ belirsizliği çıkar.
- Neden yapılır: hücrenin davranışını parça parça (bölgesel eğim) değil bütüncül ve daha doğru bir modelle açıklamak ve her parametrenin belirsizliğini bilmek için.
- Ne öğretir / ne ölçer:
iph_a= foto-akım kaynağı;saturation_current_a(j0_a_cm2) veideality_factor= diyot kalitesi;r_s_ohm/r_sh_ohm(alan-normalize*_cm2) = parazit dirençler; çift-diyot modundai02_a/n2= ikinci rekombinasyon yolu; her parametre için*_sigma_*= 1σ belirsizlik;fit_r2/rmse_a/nrmse_pct/reduced_chi2= fit kalitesi. - Tipik değerler ve yorumu: başarılı bir fitte R²≈1 ve nRMSE küçük olur; belirsizlikler (σ) değerin yanında küçükse parametre güvenilir, büyükse o parametre eğriyle iyi kısıtlanmamış demektir (ör. çok yüksek Rsh'de Rsh σ'sı büyük çıkar — normaldir). Slope/ln(I) yöntemlerine göre çok daha doğrudur.
- Sık hata / dikkat: başlangıç tahmini kötü ya da veri gürültülüyse fit yerel minimuma takılabilir; bu durumda
robust(global arama) seçeneğini açın. Tek eğriden çift-diyot zorlamak parametreleri aşırı-belirsiz yapar;circuit_resolvedbayrağını ve σ değerlerini birlikte okuyun. İşaret konvansiyonu yanlışsa Iph işareti ters çıkar. - Nerede kullanılır: ileri düzey hücre modelleme, simülasyon (SPICE) parametresi çıkarımı ve kayıp analizi.
Ne yapar: Tüm I-V eğrisini tek-diyot (Lambert-W) veya çift-diyot (implicit Newton) modeline nonlineer fitleyerek Iph, I0, n, Rs, Rsh değerlerini AYNI ANDA çıkarır; kovaryanstan 1σ belirsizlik raporlar. Slope/ln(I) yöntemlerinden çok daha doğru.
Sütunlar: Gerekli: v, i. İsteğe bağlı: i_dark, t.
| Parametre | Birim | Açıklama | Varsayılan |
|---|---|---|---|
model | — | single / two (tek/çift diyot) | single |
fit_mode | — | single_curve / light_dark | single_curve |
cell_area_cm2 | cm² | Hücre alanı | 1.0 |
temperature_c | °C | Sıcaklık | 25.0 |
irradiance_w_m2 | W/m² | Işınım | 1000.0 |
convention | — | İşaret konvansiyonu | auto |
weighting | — | relative / equal / noise | relative |
robust | bool | Global arama + sağlam fit | False |
Uygulanan formül: Tek-diyot Lambert-W kapalı çözümü I(V; Iph, I0, n, Rs, Rsh); TRF (trust-region) en-küçük-kareler ile beş parametre. Belirsizlikler kovaryans matrisinin köşelerinden (σ = sqrt(diag)).
Çıktılar: iph_a, saturation_current_a, ideality_factor, i02_a, n2, r_s_ohm, r_sh_ohm, r_s_ohm_cm2, r_sh_ohm_cm2, fit_r2, rmse_a, nrmse_pct, her parametre için *_sigma_*, j0_a_cm2, reduced_chi2, mae_a, n_points. Bayrak: circuit_resolved. Sonuç bir çizilen eşdeğer devre şeması olarak gösterilir (descriptor circuit_result plot tipi).
Örnek / beklenen: 14b_pv_equivalent_circuit.csv (Iph=30 mA, I0=1 nA, n=1.5, Rs=1 Ω, Rsh=2 kΩ; 298.15 K). Beş parametre tam geri kazanılır, R² = 1.

pv_equivalent_circuit modülü — Lambert-W nonlineer fit ile beş-parametre eşdeğer devre şeması.Tek bir bölgeden eğim/uzatma almak yerine tüm I-V eğrisi Lambert-W kapalı çözümüne nonlineer (en-küçük-kareler) fitlenir; beş parametre aynı anda çıkar (bkz. 3.4'teki ln I–V eğim yöntemine göre daha doğru).
- Başlangıç tahmininden
I(V; Iph, I0, n, Rs, Rsh)eğrisi tüm noktalara TRF ile oturtulur. - Sonuç: beş parametre + kovaryanstan
σ = √diag(1σ belirsizlik); slope/ln(I) yöntemlerine göre çok daha doğrudur.
3.6 Gelişmiş J-V Raporu (Spec v2.0) — pv_jv_full (Modül 15)
Tek bir J-V dosyasından yapılabilecek hemen her analizi tek pakette toplar: temel performans, histerezis, tarama-hızına bağlı dinamik etkiler, diyot parametreleri ve şekil bozukluğu (kink/S-eğrisi) tanıları. Bir aracın tam ekspertiz raporu gibi — tek seferde her açıdan kontrol.
Fiziksel arka plan: Bir J-V eğrisi yalnızca verim değil, tarama sırasında biriken yükü ve cihazın iç dinamiğini de taşır. Zaman ekseni varsa, gerilim-zaman eğiminden tarama hızı, akım-zaman integralinden taranan yük ve görünür kapasitans çıkar; bu dinamik metrikler histerezisin kaynağını (kapasitif/iyonik) ele verir. Ayrıca eğrinin "diz"inin altında bir basamak (kink) veya MPP'den önce ters bükülme (S-şekli) varsa, bu genellikle bir arayüzde yük çıkarımının engellendiğini (enerji bariyeri, dengesiz taşıma) gösterir. Modül, canlı PV ölçümüyle aynı jv_engine çekirdeğini çağırdığı için rapor ile gerçek-zamanlı ölçüm bire bir tutarlıdır.
- Neden yapılır: bir hücreyi tek geçişte kapsamlı biçimde belgelemek ve canlı ölçümle birebir aynı motoru kullanarak tutarlılık sağlamak için.
- Ne öğretir / ne ölçer: temel:
v_oc_v,j_sc_ma_cm2,p_max_mw_cm2,fill_factor,pce_pct, pencere-fitlir_s_a_ohm_cm2/r_sh_a_ohm_cm2; histerezis paketihi_pce/hi_area_jscvoc/delta_voc_v; dinamiksweep_rate_v_s/charge_density_c_cm2/apparent_cap_mean_f_cm2; diyotideality_factor/j0_a_cm2; tanılarrr_at_1v(doğrultma oranı),j_leak_1v_ma_cm2(kaçak),kink_score,s_shape_index. - Tipik değerler ve yorumu: sağlıklı hücrede kink_score ve s_shape_index ≈0, yüksek doğrultma oranı ve düşük kaçak beklenir; büyük s_shape_index/kink yük-çıkarım bariyeri (kötü kontak/taşıma katmanı) işaretidir. Dinamik metrikler düşük tarama hızında küçülmeli; büyük görünür kapasitans + yüksek HI = iyonik/kapasitif kaynak.
- Sık hata / dikkat: karanlık eğriyi aydınlık rapora beslemek metrikleri "Unreliable" yapar —
is_darkbayrağını doğru ayarlayın (örnek veri seti tam bu hatanın düzeltilmiş halidir). Dinamik metrikler için zaman ekseni (t) veyasweep_rate_v_sgerekir; yoksa yük/enerji/kapasitans hesaplanmaz. - Nerede kullanılır: ayrıntılı araştırma raporu, problem teşhisi (S-şekli, kink, kaçak) ve tam karakterizasyon.
Ne yapar: jv_engine çekirdeğini çağırarak (canlı PV ölçümüyle aynı motor) TAM bir J-V raporu üretir: işaret konvansiyonu, V_oc, J_sc/MPP/FF/PCE, pencere-fitli Rs/Rsh (R² raporlu), ileri/geri histerezis paketi, dinamik metrikler (tarama hızı/yük/enerji/görünür kapasitans), karanlık diyot n+J0, doğrultma oranı/kaçak, MPP tolerans penceresi/keskinliği ve kink/S-shape tanıları.
Sütunlar: Gerekli: v, i. İsteğe bağlı: t (dinamik analiz için zaman ekseni).
| Parametre | Birim | Açıklama | Varsayılan |
|---|---|---|---|
cell_area_cm2 | cm² | Hücre alanı | 1.0 |
irradiance_w_m2 | W/m² | Işınım | 1000.0 |
convention | — | İşaret konvansiyonu | auto |
is_dark | bool | Karanlık eğri mi | False |
temperature_c | °C | Sıcaklık | 25.0 |
sweep_rate_v_s | V/s | Tarama hızı (yoksa t'den) | 0.0 |
Çıktılar (seçme): sign_convention; başlıca yön için v_oc_v, j_sc_ma_cm2, p_max_mw_cm2, fill_factor, pce_pct, r_s_a_ohm_cm2, r_sh_a_ohm_cm2 (ayrıca _fwd/_rev); histerezis hi_pce, hi_pce_sym, hi_area_jscvoc, a_hyst_mw_cm2, delta_j_max_ma_cm2, delta_voc_v; dinamik sweep_rate_v_s, charge_density_c_cm2, scan_energy_net_mj_cm2, apparent_cap_mean_f_cm2; diyot ideality_factor, j0_a_cm2, diode_fit_r2; tanılar rr_at_1v, rr_max, j_leak_1v_ma_cm2, mpp_window_95_v, kink_score, s_shape_index. Bayrak: report_resolved.
Örnek / beklenen: 15_pv_jv_full.csv (aydınlık çift tarama, uygulamanın kendi sütun adları vds_measured, ids). J_sc = 30 mA/cm², V_oc = 0.696 V, FF = 0.755, PCE = %15.77; tüm metrikler çözülür. (Bu veri seti, eski ekran görüntüsünde karanlık veriyi aydınlık rapora besleyince metriklerin "Unreliable" çıkması sorununun düzeltilmiş halidir.)

pv_jv_full modülü — jv_engine ile tam J-V raporu: histerezis, dinamik metrikler, diyot ve kink/S-shape tanıları.FF/Rs/Rsh çıkarımı pv_metrics ile birebir aynıdır (bkz. 3.2: MPP dikdörtgeni + uç eğimler); bu modül ek olarak karanlık diyot ve dinamik metrikleri de kapsar.
- Aydınlık J-V'den
V_oc,J_sc, MPP ve uçlardaki eğimlerden Rs/Rsh okunur (3.2 ile aynı). - Sonuç: temel performans (FF, PCE) + histerezis + dinamik (tarama hızı/yük) + karanlık diyot (n, J0) tek raporda toplanır.
3.7 Kararlılık / Degradasyon — pv_degradation (Modül 16)
Bir hücrenin performansını zaman içinde takip edip "ne kadar dayanır?" sorusunu yanıtlar; başlangıç değerinin belirli bir yüzdesine düşene kadar geçen süreyi (T80/T90) bulur. Bir telefon bataryasının zamanla kapasitesini yitirmesi gibi — ne zaman %80'e iner sorusunun cevabı.
Fiziksel arka plan: Güneş hücreleri zamanla bozunur (degradasyon): nem/oksijen girişi, ışık-kaynaklı kusur oluşumu, iyon göçü veya kontak korozyonu performansı yavaşça düşürür. Bu düşüş çoğu kez üstel bir sönüme yakındır; başlangıç değerinin %80'ine (T80) ve %90'ına (T90) inme süreleri standart ömür ölçütleridir. Ölçüm penceresi cihaz bu eşiklere inmeden biterse, modül son %30'un eğimini kullanıp (negatifse) ekstrapolasyonla eşiği kestirir — bu yüzden grafikte gözlemlenen kuyruğun eğimi tahmin edilen ömrü belirler.
- Neden yapılır: cihazın gerçek kullanım ömrünü kestirmek ve farklı malzeme/kapsülleme/kaplamaların dayanıklılığını adil kıyaslamak için.
- Ne öğretir / ne ölçer:
initial_value= ilkn_initialnoktanın ortalaması (referans y0);t80/t90= y0'ın %80/%90'ına inme süreleri;retention_pct= son değerin y0'a oranı (kalan performans);final_value= son ölçülen değer;t80_extrapolatedbayrağı eşiğin ölçülmediğini, tahmin edildiğini belirtir. - Tipik değerler ve yorumu: ticari Si modüllerde T80 on yıllar (yılda ~%0.5–1 kayıp); olgunlaşmamış perovskit/organik cihazlarda saatler–yüzlerce saat olabilir. Yüksek retention = kararlı cihaz;
t80_extrapolated=Trueise sayı ölçülmedi, tahmin edildi — kısa testten uzun ömür çıkarımına temkinli yaklaşın. - Sık hata / dikkat: ekstrapole edilmiş T80'i ölçülmüş gibi kesin sunmak;
n_initialgürültülü ilk noktalara denk gelirse y0 ve dolayısıyla tüm eşikler kayar; üstel olmayan (basamaklı/ani) bozunumda kapalı-form τ varsayımı yanıltır. Zaman birimine dikkat (s/h). - Nerede kullanılır: kararlılık testleri (ISOS protokolleri), ürün ömrü/garanti kestirimi ve hızlandırılmış yaşlandırma çalışmaları.
Ne yapar: Bir kararlılık zaman serisinden (ör. I_sc(t)) T80/T90 ömür eşiklerini ve elde tutma (retention) yüzdesini çıkarır.
Sütunlar: Gerekli: t, i. Parametreler: n_initial=3 (başlangıç ortalama nokta sayısı), extrapolate=True.
Uygulanan formül: y0 = ilk n_initial noktanın ortalaması; T80 = y'nin 0.80·y0'a ilk düştüğü zaman (lineer ara-değerleme; veride ulaşılmazsa ve son %30 eğim negatifse ekstrapolasyon); retention = y[-1]/y0·100. Üstel sönüm için kapalı form: T80 = −τ·ln(0.80), T90 = −τ·ln(0.90).
Çıktılar: initial_value, final_value, retention_pct [%], t80, t90 (zaman birimi). Bayrak: t80_extrapolated. Standart: ISOS 2020.
Örnek / beklenen: 16_pv_degradation.csv (I_sc(t)=30 mA·exp(−t/τ), τ=1000 h, 0–500 h). T80 = −τ·ln(0.80) = 223.1 h, T90 = 105.4 h, retention(500 h) = exp(−0.5) = %60.65.

pv_degradation modülü — T80/T90 ömür eşikleri ve retention yüzdesi (ISOS 2020).4. TFT / FET Analiz Modülleri
4.1 Transfer (On-Off) Eğrisi — tft_on_off (Modül 17)
Bir ince-film transistörün kapı gerilimini değiştirip "ne kadar iyi bir anahtar?" sorusunu yanıtlar: ne zaman açılır, açık/kapalı akım farkı ne kadar büyük, ne kadar keskin açılır. Bir musluğun ne kadar açtığınızda akmaya başladığını ve tam açık ile tam kapalı arasındaki farkı ölçmek gibi.
Fiziksel arka plan: Kapı gerilimi Vgs, yalıtkan oksit üzerinden kanaldaki yük yoğunluğunu kontrol eder. Eşik gerilimi Vth'nin altında kanal henüz oluşmadığından akım yalnızca termal yayınımla akar ve Vgs ile üstel artar — bu yüzden semilog transfer eğrisinin alt-eşik bölgesi düz bir doğrudur ve eğimi (SS) anahtarlamanın keskinliğini verir. Vth üstünde kanal dolar, akım artık doğrusal/karesel büyür; eğrinin "açık" platosuna oturmasının nedeni budur. Alt-eşik eğimi ne kadar dik (SS küçük) ise tuzaklar o kadar az; çift-yön tarandığında eğrinin kayması (ΔVth) tuzak doldurma/boşaltma histerezisini gösterir.
- Neden yapılır: transistörün anahtarlama kalitesini ve kanal/arayüz malzemesinin elektronik özelliklerini sayısallaştırmak için.
- Ne öğretir / ne ölçer:
on_off_ratio= açık/kapalı akım oranı (kontrast);vth_v= kanalın açıldığı eşik (max-gm tanjant ekstrapolasyonu);ss_mv_dec= akımı 10× değiştirmek için gereken Vgs (anahtarlama keskinliği/tuzak göstergesi);mu_fe_cm2_vs= alan-etkisi mobilitesi (taşıyıcıların ne kadar kolay aktığı);dit_cm2_ev= arayüz tuzak yoğunluğu (SS'den);vth_y_v/mu0_y_cm2_vs= Rs'ten arınmış Y-fonksiyonu çıkarımı;delta_vth_v/hysteresis_window_v= çift-yön histerezisi. - Tipik değerler ve yorumu: iyi bir TFT için on/off ≳10⁶–10⁸; SS ~60–100 mV/dec mükemmele yakın (60 mV/dec oda sıcaklığı teorik sınırı), >300 mV/dec yoğun arayüz tuzağı; mobilite teknolojiye göre değişir (a-Si ~1, metal-oksit/IGZO ~10, poli-Si onlarca cm²/V·s). Küçük ΔVth = kararlı arayüz.
- Sık hata / dikkat: on/off ve SS'yi lineer eksende okumaya çalışmak (mutlaka semilog); W/L/C_ox girilmezse mobilite ve Dit hesaplanmaz (ama Vth/SS/on-off yine çıkar); Ioff'u gürültü/sızıntı tabanından okuyup on/off'u abartmak (
ioff_robust_akullanın); histerezisi tek-yön tarayıp kaçırmak. - Nerede kullanılır: ekran/sensör transistör karakterizasyonu, yeni yarı iletken/dielektrik malzeme değerlendirmesi ve proses kalite kontrolü.
Ne yapar: Bir transfer eğrisinden (Id-Vgs, sabit Vds) tam parametre raporu çıkarır: on/off oranı, eşik gerilimi Vth, altesik eğimi SS, alan-etkisi mobilitesi µFE, Y-fonksiyonu Vth/µ0, arayüz tuzak yoğunluğu Dit ve (çift-yön varsa) histerezis ΔVth. Ölçüm tarafıyla AYNI motoru (calculate_transfer_summary) salt-okunur sarar.
Sütunlar: Gerekli: v (Vgs), i (Id).
| Parametre | Birim | Açıklama | Varsayılan |
|---|---|---|---|
w_um | µm | Kanal genişliği W | 100.0 |
l_um | µm | Kanal uzunluğu L | 10.0 |
cox_nf_cm2 | nF/cm² | Kapı oksit kapasitansı C_ox | 34.5 |
fixed_vds | V | Sabit Vds | 1.0 |
method | — | Linear / Saturation | Linear |
Uygulanan formül:
I_on/I_off = max|I_d| / min|I_d|
SS = dV_gs / d(log10 I_d) (en dik altesik penceresi)
µ_FE = g_m · L / (W · C_ox · V_ds) (doğrusal bölge, max-gm)
V_th = V_gs* − I_d* / g_m,max (max-gm tanjant ekstrapolasyonu)
Çıktılar: on_off_ratio, vth_v, ss_mv_dec, mu_fe_cm2_vs, ion_a, ioff_a, ioff_robust_a, on_off_ratio_robust, gm_max_s, gm_max_vgs_v, ss_r2, vth_y_v, mu0_y_cm2_vs, y_r2, dit_cm2_ev, vth_fwd_v, vth_bwd_v, delta_vth_v, hysteresis_window_v, extraction_method. Bayrak: analysis_resolved. Standartlar: IEEE 1620-2008, GUM.
Örnek / beklenen: 17_tft_on_off.csv (n-tipi sigmoid, Vds=1 V). I_on/I_off ≈ 1e8, V_th ≈ 0.75 V, SS ≈ 0.15·ln10·1000 = 345 mV/dec.

tft_on_off modülü — on/off oranı, Vth, SS, µFE, Y-fonksiyonu, Dit ve histerezis.Lineer transfer eğrisi (I_d–V_gs) kullanılır; eğimin en dik olduğu (max-gm) noktada teğet çizilir.
g_m = dI_d/dV_gs'in maksimum olduğu nokta bulunur ve oraya teğet doğru çizilir.- Teğet x-eksenine (I_d=0) uzatılır; kesişim eşik gerilimini verir.
- Sonuç:
V_th = V_gs* − I_d*/g_m,max(x-kesişimi). Mobilite aynı eğimden:µ_FE = g_m·L/(W·C_ox·V_ds).

Transfer eğrisi yarı-logaritmik (log I_d–V_gs) çizilir; alt-eşik bölgesindeki en dik doğrusal kısım seçilir.
- Alt-eşik bölgesinde bir dekadlık (akımın ×10 değiştiği) en dik doğru parçasına eğim oturtulur.
- O bir dekad için gereken ΔV_gs okunur.
- Sonuç:
SS = ΔV_gs/Δ(log10 I_d)[mV/dec] (eğimin tersi); küçük SS = keskin anahtarlama.

4.2 Çıkış (Output) Eğrisi — tft_output (Modül 18)
Transistör açıkken, dren gerilimini artırdıkça ne kadar akım sürebildiğini ve akımın nerede "doyuma" ulaşıp sabitlendiğini inceler. Bir su pompasının basınç arttıkça ne kadar debi verebildiğini ve nerede tavana vurduğunu ölçmek gibi.
Fiziksel arka plan: Düşük Vds'de kanal her yerde iletkendir ve akım Vds ile doğrusal artar (lineer/triyot bölgesi, eğim ≈ 1/Ron). Vds büyüdükçe kanal dren ucunda "kıstırılır" (pinch-off); bu noktadan sonra fazladan Vds esas olarak kıstırılmış bölgeye düşer ve akım neredeyse sabitlenir — doyum bölgesi. Eğrinin yatık platosunun nedeni budur. Plato tam yatay değildir: kanal-uzunluğu modülasyonu (λ) yüzünden hafif yükselir; bu eğim çıkış direnci r_o = 1/(I_dsat·λ) ve Early gerilimi V_A = 1/λ olarak okunur. Birden çok Vgs için bu eğri ailesi, doyum mobilitesini de verir.
- Neden yapılır: transistörün sürebileceği akımı, çıkış direncini ve yükselteç olarak kazanç potansiyelini (intrinsik kazanç) anlamak için.
- Ne öğretir / ne ölçer:
ron_ohm= lineer bölge açık direnci (düşük-Vds eğimi);idsat_a= doyum akımı;lambda_per_v= kanal-uzunluğu modülasyonu;output_resistance_ohm= doyumda çıkış direnci r_o;va_v= Early gerilimi (1/λ);av= intrinsik kazanç g_m·r_o;knee_v= lineer→doyum diz gerilimi; çoklu Vgs varsamu_sat_cm2_vs= doyum mobilitesi;n_curves/vgs_used_v= ailedeki eğri sayısı. - Tipik değerler ve yorumu: düşük Ron = iyi sürme yeteneği; yüksek r_o / yüksek V_A (büyük 1/λ) = yatay plato, iyi akım kaynağı ve yüksek kazanç; düşük V_A (dik plato) = kısa-kanal etkisi. Diz gerilimi yaklaşık Vgs−Vth civarındadır.
- Sık hata / dikkat: tek eğriyle (tek Vgs) doyum mobilitesi çıkarılamaz (
µ_sat = N/A); λ'yı plato yerine lineer bölgeden fitlemek r_o'yu bozar; Ron'u doyum bölgesinden okumak. r_o, λ ve V_A aynı fiziğin farklı ifadeleridir, tutarlı olmalıdır. - Nerede kullanılır: devre tasarımı için transistör modelleme, sürücü/yükselteç kademesi boyutlandırma ve performans doğrulama.
Ne yapar: Çıkış eğrisinden/ailesinden (Id-Vds, kademeli Vgs) Ron, çıkış direnci r_o, kanal-uzunluğu modülasyonu λ, Early gerilimi VA, Idsat, knee ve (çoklu Vgs varsa) doyum mobilitesi µ_sat çıkarır. Ölçüm motoru analyze_iv salt-okunur sarılır.
Sütunlar: Gerekli: v (Vds), i (Id). İsteğe bağlı: v_bias (kademeli Vgs adım ekseni). Parametreler: w_um=100, l_um=10, cox_nf_cm2=34.5.
Uygulanan formül: Doyum bölgesi I_d = I_dsat·(1 + λ·V_ds); çıkış direnci r_o = 1/(I_dsat·λ); Ron düşük-Vds eğiminden; Early gerilimi V_A = 1/λ.
Çıktılar: ron_ohm, output_resistance_ohm, lambda_per_v [1/V], mu_sat_cm2_vs, va_v, idsat_a, gm_s, av, knee_v, vth_sat_v, mu_sat_r2, vgs_used_v, n_curves. Bayrak: analysis_resolved.
Örnek / beklenen: 18_tft_output.csv (tek eğri Vgs=4 V, λ=0.02/V). I_dsat = 1e-4·(4−1)² = 9e-4 A, λ = 0.02/V, r_o = 1/(I_dsat·0.02) ≈ 5.6e4 Ω, R_on ≈ 4.4e2 Ω. Tek eğri olduğu için µ_sat = N/A.

tft_output modülü — Ron, r_o, λ, Early gerilimi VA, Idsat ve doyum mobilitesi.Çıkış eğrisi (I_d–V_ds) kullanılır; iki farklı bölgenin eğimi alınır.
- Düşük-V_ds (lineer/triyot) bölgesine doğru oturtulur; eğimi
1/R_onverir. - Doyum platosunun hafif eğimine
I_d = I_dsat·(1 + λ·V_ds)doğrusu oturtulur. - Sonuç:
R_on = 1/eğim_lineer; doyum eğimindenr_o = 1/(I_dsat·λ)veV_A = 1/λ.

5. İstatistik ve Dayanıklılık Modülleri
5.1 Betimsel İstatistik — descriptive_stats (STAT-01)
Aynı şeyi defalarca ölçtüğünüzde sonuçlar birbirinin tıpatıp aynısı çıkmaz; bu modül o tekrarlardan ortalama, yayılım ve "ortalamaya ne kadar güvenebilirim?" sorusunun bilimsel cevabını (belirsizlik) hesaplar. Aynı oku hedefe defalarca atıp atışların ne kadar dağıldığına bakmak gibi — dağılım darsa güveniniz yüksektir. Bu saf bir istatistik modülüdür; cihaza özgü bir fiziği yoktur.
- Neden yapılır: bir ölçümün tekrarlanabilirliğini sayıya dökmek ve sonucu standart belirsizlikle (GUM) raporlamak için.
- Ne öğretir / ne ölçer:
mean/median= merkezî eğilim;std_sample= yayılım;u_mean = s/√N= ortalamanın standart belirsizliği;expanded_u_mean = k·u= genişletilmiş belirsizlik;rel_std_pct= bağıl saçılma. - Sık hata / dikkat: az tekrarla (
2 ≤ N < 10) belirsizlik zayıftır; tek ölçümle (N=1) belirsizlik tanımsızdır (rozet güvenilmez). Standart sapma (yayılım) ile ortalamanın belirsizliğini (√N kadar küçük) karıştırmayın. - Nerede kullanılır: ölçüm belirsizliği bütçesi, kalibrasyon raporu, kalite kontrol istatistiği.
Ne yapar: Tekrarlı ölçümlerden (bir sayısal sütun) betimsel istatistik ve ortalamanın Type-A standart belirsizliğini çıkarır.
Sütunlar: Gerekli: i (yoksa v). Parametre: coverage_k=2.0 (kapsam faktörü, 1–6).
Uygulanan formül (GUM Type-A):
s = std(x, ddof=1) (örnek standart sapma, Bessel)
u(x̄) = s / sqrt(N) (ortalamanın standart belirsizliği)
U = k · u(x̄) (genişletilmiş belirsizlik)
rel_std_pct = 100 · s / |x̄|
Çıktılar: n, mean, median, min, max, range, std_sample, u_mean, coverage_k, expanded_u_mean, rel_std_pct. Bayrak: enough_points (N ≥ 2, güvenilirliği belirler). Uyarı: 2 ≤ N < 10 ise belirsizlik az tekrara dayanır (zayıf). Standartlar: ISO/IEC Guide 98-3 (GUM), NIST/SEMATECH e-Handbook.
Örnek / beklenen: 19_descriptive_stats.csv (I = 1..11 A, N=11). mean = median = 6, range = 10, s = sqrt(110/10) = sqrt(11) = 3.31662, u(mean) = sqrt(11)/sqrt(11) = 1.0, U = 2·1.0 = 2.0 (k=2).
u_mean çıktısı, Calc çalışma alanındaki GUM belirsizlik çerçevesine Type-A girdi olarak beslenebilir; böylece bileşik belirsizlik bütçesi oluşturulabilir.
descriptive_stats modülü — betimsel istatistik ve GUM Type-A standart belirsizlik.Grafik gerektirmez; tekrarlı ölçümlerin saçılmasından doğrudan formülle hesaplanır.
- Örnek standart sapma
s = std(x, ddof=1)(Bessel düzeltmesi) bulunur. - Sonuç: ortalamanın belirsizliği
u(x̄) = s/√N; genişletilmişU = k·u(x̄).
5.2 Doğrusal Regresyon — linear_regression (STAT-02)
İki büyüklük arasında düz bir orantı varsa (örn. ışık arttıkça akım artıyorsa), bu modül noktalardan geçen "en iyi doğruyu" çizer ve eğim/kesim ile bunların güvenilirliğini verir. Dağınık noktaların ortasından bir cetvelle en uygun çizgiyi geçirmek gibi — ama gözle değil, matematikle. Bu saf bir istatistik (OLS) modülüdür; cihaza özgü bir fiziği yoktur.
- Neden yapılır: iki değişken arasındaki ilişkiyi sayısallaştırmak, kalibrasyon doğrusu çıkarmak veya bir eğimden fiziksel büyüklük türetmek için.
- Ne öğretir / ne ölçer:
slope/intercept= doğrunun eğimi ve kesimi (her biri Type-Au_*ve genişletilmiş belirsizlikle);r_squared= uyum kalitesi;residual_std= artıkların saçılması. - Sık hata / dikkat: az nokta (
N < 8) ile belirsizlikler geniştir; yüksek R²'yi "doğrusallık kanıtı" sanmak (eğri veride de R² yüksek çıkabilir — artıklara bakın); mükemmel fitte (R²=1) belirsizlik 0 çıkar, bu sentetik verinin işaretidir. - Nerede kullanılır: sensör kalibrasyonu, trend analizi, deneysel yasa doğrulama.
Ne yapar: Bir (x, y) çiftine doğrusal en-küçük-kareler (OLS) uygular; eğim/kesim ve bunların Type-A belirsizliklerini verir.
Sütunlar: Gerekli: v (x), i (y). Parametre: coverage_k=2.0.
Uygulanan formül:
eğim m = Σ(x−x̄)(y−ȳ) / S_xx, S_xx = Σ(x−x̄)²
kesim b = ȳ − m·x̄
R² = 1 − SS_res / SS_tot
s² = SS_res / (N−2) (residüel varyans, serbestlik N−2)
u(m) = sqrt( s² / S_xx )
u(b) = sqrt( s² · (1/N + x̄²/S_xx) )
Çıktılar: n, slope, u_slope, expanded_u_slope, intercept, u_intercept, expanded_u_intercept, coverage_k, r_squared, residual_std. Bayrak: good_fit (R² > 0.99). Uyarı: N < 8 ise belirsizlikler zayıf/geniş.
Örnek / beklenen: 20_linear_regression.csv (tam doğru y = 3x + 2, x=0..9). slope = 3, intercept = 2, R² = 1, residual_std = 0 → u(slope) = u(intercept) = 0 (mükemmel fit).

linear_regression modülü — OLS eğim/kesim ve Type-A belirsizlikleri.(x, y) noktalarına en küçük kareler doğrusu oturtulur; eğim ile kesişim ve artıklardan belirsizlik çıkar.
- Noktalara, kare-artık toplamını en küçükleyen doğru oturtulur; eğim
m = Σ(x−x̄)(y−ȳ)/S_xx. - Doğru y-eksenine uzatılarak kesişim
b = ȳ − m·x̄okunur. - Sonuç: artıkların saçılmasından
u(m) = √(s²/S_xx)veu(b)(Type-A belirsizlik).

5.3 Dayanıklılık (Direnç-Anahtarlama) — endurance (Modül 36)
Bir direnç-anahtarlamalı bellek (memristör) hücresi kaç kez "yaz-sil" döngüsüne dayanabilir? Bu modül her döngüdeki yüksek ve düşük direnç durumlarını izleyip ikisinin arasındaki "pencerenin" ne zaman kapanmaya başladığını (arıza) bulur. Bir ışık anahtarını binlerce kez açıp kapatıp ne zaman takılmaya başladığını saymak gibi.
Fiziksel arka plan: RRAM hücresi, içinde iletken bir filamentin oluşması (SET → düşük direnç, LRS) veya kopması (RESET → yüksek direnç, HRS) ile "1" ve "0" saklar. Veriyi okuyabilmek için iki durumun dirençleri açıkça farklı olmalı; bu fark "bellek penceresi" oranı R_HRS/R_LRS'tir. Döngüler tekrar ettikçe filament malzemesi yorulur (iyon tükenmesi, ısıl hasar): LRS yükselir veya HRS düşer, pencere daralır. Pencere belirli bir eşiğin altına indiğinde iki durum güvenle ayırt edilemez — işte dayanıklılık arızası. Bu yüzden döngü-direnç grafiği yarılog çizilir ve iki serinin birbirine yaklaştığı an aranır.
- Neden yapılır: bellek hücresinin ömrünü (kaç döngü) ve durumları güvenilir biçimde ayırt edebilme yeteneğini değerlendirmek için.
- Ne öğretir / ne ölçer:
window_ratio_initial/window_ratio_final/window_ratio_min= pencere oranı R_HRS/R_LRS'in başı, sonu ve en kötüsü;first_failure_cycle= pencerenin eşiğin altına ilk indiği döngü (yoksa arıza yok);r_lrs_final_ohm/r_hrs_final_ohm= son durum dirençleri;n_cycles_analyzed= analiz edilen döngü sayısı;endurance_pass= arıza yok VE en kötü pencere ≥ eşik kararı. - Tipik değerler ve yorumu: sağlam bir hücrede pencere oranı ≳10 (genelde 10–100+) ve döngüler boyunca kararlı kalır;
failure_window_ratio(varsayılan 5) altına düşen ilk döngü ömrün sonudur. Çok yüksek ve dar-dağılımlı pencere iyi; döngüyle düşen veya çok saçılan pencere yorgunluk/kararsızlık işaretidir. - Sık hata / dikkat: rol bindirmesine dikkat — burada
i= R_LRS,v= R_HRS,t= döngü numarasıdır (akım/gerilim değil); R_HRS yüklenmezse yalnız LRS hesaplanır ve eksik-HRS notu bırakılır (pencere oranı çıkmaz). Yarılog yerine lineer bakmak küçük LRS değişimlerini gizler. - Nerede kullanılır: yeni nesil bellek (RRAM/memristör) araştırması, güvenilirlik/dayanıklılık testi ve malzeme/yapı karşılaştırması.
Ne yapar: Geniş-biçim bir dayanıklılık veri setinden (her SET/RESET döngüsü için bir satır) direnç-anahtarlama bellek metriklerini çıkarır.
Sütunlar (rol bindirmesi — Faz 1 sözleşmesi): Gerekli: t (döngü numarası), i (R_LRS, düşük-direnç durumu). İsteğe bağlı: v (R_HRS, yüksek-direnç durumu). Parametre: failure_window_ratio=5.0 (arıza eşiği, alt sınır 1.0).
Uygulanan formül:
pencere oranı W = R_HRS / R_LRS
ilk arıza = W < eşik koşulunu sağlayan ilk döngü numarası
Çıktılar: window_ratio_initial, window_ratio_final, window_ratio_min, first_failure_cycle, r_lrs_final_ohm, r_hrs_final_ohm [Ω], n_cycles_analyzed. Bayrak: endurance_pass (arıza YOK ve en kötü pencere ≥ eşik). R_HRS yüklenmezse LRS-yalnız hesaplanır ve eksik HRS notu bırakılır.
Örnek / beklenen: 36_endurance.csv (40 sağlıklı döngü; R_LRS ≈ 1 kΩ ±%3, R_HRS ≈ 100 kΩ ±%5). Pencere ≈ 100 (min ≈ 93.6) ≫ eşik 5.0 → ilk arıza yok, endurance_pass = True. Son R_LRS ≈ 1027 Ω, son R_HRS ≈ 104219 Ω. Yarılog R-döngü grafiği (LRS birincil, HRS ikincil seri) çizilir.

endurance modülü — döngü-başına direnç penceresi ve arıza döngüsü tespiti.6. Güvenilirlik Rozeti ve Kalite Bayrakları — Hızlı Referans
Aşağıdaki tablo, her modülün güvenilirliği belirleyen ana bayrağını ve standart referanslarını özetler. Rozet unreliable çıkıyorsa önce bu bayrağı kontrol edin; non_stc çıkıyorsa ilgili koşul parametresini (irradiance / temperature / active_area) girin.
| Modül | Ana bayrak (sets_reliability) | Ek kalite/uyarı | Standart |
|---|---|---|---|
temporal_response | cycles_found, above_floor | nyquist_ok | IEEE 181, IEC 60469, GUM |
photo_dark_ratio | dark_current_resolved | — | — |
persistence | (R² tabanlı) | R² < 0.95 uyarı | JEDEC BTI (konvansiyon) |
bandwidth_3db | rise_time gereksinimi | — | — |
responsivity | i_photo çözünürlüğü | spot>alan uyarı | IEC 60904-8 |
eqe_iqe | R/λ gereksinimi | EQE/IQE>%100 uyarı | — |
linearity_ldr | powerlaw fit | R² < 0.999 uyarı | IEC 60904-10 |
nep_detectivity | nep_reliable | D* > 1e14 uyarı | GUM |
noise_psd | PSD çözünürlüğü | — | — |
pwm_analysis | periyot sayısı | — | — |
mppt_analysis | MPP çözünürlüğü | FF > 1 uyarı | — |
pv_metrics | metrics_resolved | FF ≤ 1; non_stc koşulları | IEC 60904-1/3, GUM |
pv_hysteresis | segment ayrımı | — | IEC 60904-1 |
pv_diode | ideality_resolved | n∉[0.8,10], R²<0.98 | — |
pv_equivalent_circuit | circuit_resolved | fit yakınsama | — |
pv_jv_full | report_resolved | rapor uyarıları | IEC 60904-1/3 |
pv_degradation | retention çözünürlüğü | t80_extrapolated | ISOS 2020 |
tft_on_off | analysis_resolved | SS > 0 | IEEE 1620, GUM |
tft_output | analysis_resolved | — | IEEE 1620 |
descriptive_stats | enough_points (N≥2) | N ≥ 10 | GUM |
linear_regression | good_fit (R²>0.99) | N ≥ 8 | GUM |
endurance | endurance_pass | eksik HRS notu | — |
7. Örnek Veri Setleri ve Beklenen Sonuçlar — Özet
Tüm örnek dosyalar examples/analysis/ altındadır; her biri Analiz alanında doğrudan yüklenebilir (sütunlar otomatik eşlenir) veya python -m examples.analysis.generate_and_verify ile yeniden üretilip doğrulanabilir.
| Dosya | Modül | Beklenen ana sonuç |
|---|---|---|
01_temporal_response.csv | temporal_response | t_rise=43.944 µs, t_fall=131.833 µs, 3 döngü |
02_photo_dark_ratio.csv | photo_dark_ratio | ratio=99.0, SNR=59.91 dB |
03_persistence_decay.csv | persistence | τ=0.25 s, R²≈1 |
04_bandwidth_3db.csv | bandwidth_3db | BW=7964.9 Hz |
05_responsivity.csv | responsivity | R=0.45 A/W, EQE 65.6% |
06_eqe_iqe.csv | eqe_iqe | EQE=65.64%, IQE=72.94% |
07_linearity_ldr.csv | linearity_ldr | α=1.0, LDR=100 dB, C=0.45 |
08_nep_detectivity.csv | nep_detectivity | D*≈1e12 Jones |
09_noise_psd.csv | noise_psd | γ=1.0, f_c=200 Hz, floor=1e-22 |
10_pwm_analysis.csv | pwm_analysis | f=1000 Hz, duty=30% |
11_mppt_analysis.csv | mppt_analysis | V_oc=0.668 V, FF≈0.80, PCE≈16% |
12_pv_metrics.csv | pv_metrics | J_sc=30, V_oc=0.696, FF=0.755, PCE=15.8% |
13_pv_hysteresis.csv | pv_hysteresis | HI≈%5, ileri kötü |
14_pv_diode_dark.csv | pv_diode | n=1.5, I0=1 nA |
14b_pv_equivalent_circuit.csv | pv_equivalent_circuit | Iph=30 mA, I0=1 nA, n=1.5, Rs=1, Rsh=2k, R²=1 |
15_pv_jv_full.csv | pv_jv_full | J_sc=30, V_oc=0.696, FF=0.755, PCE=15.77% |
16_pv_degradation.csv | pv_degradation | T80=223.1 h, T90=105.4 h, retention=60.65% |
17_tft_on_off.csv | tft_on_off | on/off≈1e8, V_th≈0.75 V, SS≈345 mV/dec |
18_tft_output.csv | tft_output | I_dsat=9e-4 A, λ=0.02/V, r_o≈5.6e4 Ω |
19_descriptive_stats.csv | descriptive_stats | mean=6, s=3.31662, u=1.0, U=2.0 |
20_linear_regression.csv | linear_regression | slope=3, intercept=2, R²=1 |
36_endurance.csv | endurance | pencere≈100, arıza yok, pass=True |
example_specs.py içinde elle türetilmiş bir "ground truth" ile gelir ve hem sayısal beklentiler (değer + tolerans) hem de fiziksel yasalar (ör. FF ≤ 1, EQE ≤ %100, V_mpp < V_oc, t_fall/t_rise = τ_f/τ_r, D* > 0) ayrı ayrı doğrulanır. Bu sayede her metrik, hem doğru sayıyı üretti hem de fiziği ihlal etmedi.