İÇİNDEKİLER

İÇERİKLER

16 Aralık 2025 Salı

Circutikz'in Temelleri

GİRİŞ

LaTeX ve ConTeXt, TeX ailesinin iki farklı belge hazırlama sistemidir. Bu aile Donald Knuth’un 1978’de geliştirdiği TeX motoru üzerine kuruludur. TeX’in kendisi en temel çekirdek olarak düşünülebilir; doğrudan kullanımı zordur ama üzerine farklı sistemler inşa edilmiştir. Plain TeX bu motorun sade hali, LaTeX ise akademik ve bilimsel belgeler için makro tabanlı bir sistemdir. ConTeXt ise tipografik kontrolü yüksek, modül tabanlı bir sistemdir. Ayrıca XeTeX ve LuaTeX gibi motorlar Unicode ve programlama desteği ekler. TikZ ve Circuitikz de bu ailenin parçasıdır; bunlar TeX içinde grafik ve devre çizimi için geliştirilmiş paketlerdir.

LaTeX ile ConTeXt arasındaki farklara bakıldığında, LaTeX makro tabanlıdır ve paketler \usepackage{...} komutuyla yüklenir. ConTeXt ise modül tabanlıdır ve \usemodule[...] komutuyla çalışır. LaTeX’te stil kontrolü belge sınıfı ve paketler üzerinden yapılırken, ConTeXt doğrudan ayarlarla çalışır. LaTeX daha yaygın olduğu için öğrenme eğrisi daha kolaydır ve çok sayıda kaynak vardır. ConTeXt ise daha tutarlı bir sistem sunar ama kaynakları sınırlıdır. Tipografi açısından ConTeXt daha gelişmiş ve hassas kontrol sağlar. Devre çizimi açısından ise fark yoktur; her iki sistemde de TikZ ve Circuitikz aynı şekilde çalışır. LaTeX daha çok akademik ve bilimsel kullanıcıları hedeflerken, ConTeXt tasarımcılar ve teknik yazarlar için daha cazip olabilir.

MathML, MathJax ve KaTeX ise bu ailenin dışında yer alır. Bunlar web tabanlı matematik yazım sistemleridir. MathML, HTML ve XML içinde kullanılan bir standarttır ve TeX’ten farklıdır. MathJax web sayfalarında çalışır ve TeX benzeri sözdizimini destekler. KaTeX yine web sayfalarında kullanılan bir sistemdir, MathJax’a alternatif olarak geliştirilmiştir ve daha hızlıdır. LaTeX ise PDF ve baskı belgeleri için kullanılır. MathJax ve KaTeX, LaTeX sözdizimini taklit eder ama TeX motorunu kullanmaz. MathML ise tamamen farklı bir XML standardıdır.

TikZ ve Circuitikz bu ailenin içindedir. TikZ, TeX içinde grafik çizimi için geliştirilmiş bir paket, Circuitikz ise TikZ üzerine kurulmuş ve elektrik devreleri için özel semboller sunan bir pakettir. Her ikisi de hem LaTeX hem ConTeXt içinde kullanılabilir. LaTeX’te \usepackage{circuitikz} ile çağrılırken, ConTeXt’te \usemodule[circuitikz] ile yüklenir.

LaTeX ve ConTeXt’in TeX ailesi içindeki konumunu, TikZ ve Circuitikz gibi paketlerin bu ekosistemde nasıl çalıştığını gördükten sonra, artık Circuitikz’in kendi hikâyesine geçebiliriz. Teorik altyapının ötesinde, bu paketin nasıl doğduğu, kimler tarafından geliştirildiği ve zaman içinde nasıl evrildiği, bugün akademik dünyada neden fiili bir standart hâline geldiğini anlamak açısından önemlidir. İşte bu noktada, Circuitikz’in 2007 yılında Massimo Redaelli tarafından başlatılan serüveni devreye giriyor

CircuiTikZ, TikZ’in grafik gücünü elektrik-elektronik dünyasına uyarlamak amacıyla 2007 yılında Massimo Redaelli tarafından başlatılmıştır. Bu projenin temelleri, o dönemde İtalya'daki Milano Teknik Üniversitesi'nde (Politecnico di Milano) araştırma görevlisi olan Redaelli'nin, öğrencilerine hazırladığı sınav soruları ve alıştırmalar için profesyonel bir araca ihtiyaç duymasıyla atılmıştır.

2010 yılında kurucusunun üniversiteden ayrılmasıyla gelişim süreci bir miktar yavaşlamış olsa da, paket akademik dünyadaki yerini korumuştur. Projenin modern ve ivmeli dönemi, 2015 yılında Almanya'daki Erlangen-Nürnberg Üniversitesi'nden Stefan Lindner ve Stefan Erhardt'ın ekibe dahil olmasıyla başlamıştır. 2018 yılında ise Madrid Comillas Pontifical Üniversitesi'nden Profesör Romano Giannetti'nin katılımıyla geliştirici kadrosu bugün bildiğimiz halini almış ve proje bu geniş ekip tarafından sürdürülmeye devam etmiştir.

CircuiTikZ, LaTeX içinde elektrik ve elektronik devrelerini çizmek için geliştirilmiş bir üst katmandır. Temel amacı; devre çizimini tıpkı bir matematiksel denklem yazımı kadar temiz, tekrarlanabilir ve tipografik olarak tutarlı hale getirmektir. Temeli TikZ grafik motoruna dayanan bu paket, şu bileşenleri hazır komutlarla üretmenizi sağlar:

  • Pasif Elemanlar: Direnç (R), kondansatör (C) ve bobin (L) gibi temel bileşenler.

  • Kaynaklar: DC ve AC gerilim (V) ile akım (I) kaynakları.

  • Yarı İletkenler: NPN/PNP transistörler, MOSFET'ler ve diyotlar.

  • Entegre Sistemler: Op-amp'ler ve genel blok diyagram elemanları.

  • Bağlantı Detayları: Toprak sembolleri, bağlantı noktaları ve gelişmiş akım/gerilim etiketleme sistemleri.

Bugün CircuiTikZ, yalnızca bir sınav hazırlama aracı olmaktan çıkmış; dünya genelindeki mühendisler ve akademisyenler tarafından makale, teknik kitap ve her türlü bilimsel yayın için kullanılan fiili bir standart haline gelmiştir.

CircuiTikZ kütüphanesinin evrimi, bireysel bir akademik ihtiyaçtan küresel bir mühendislik standardına uzanan dikkate değer bir süreci temsil eder. Paketin gelişimindeki en kritik dönemeçler, resmi belgeler ve CTAN kayıtları ışığında şu şekilde kronolojikleştirilebilir:

·         2007: Kuruluş ve Akademik Kökenler CircuiTikZ projesi, Massimo Redaelli tarafından Milano Teknik Üniversitesi'nde (Politecnico di Milano) hayata geçirilmiştir. Paketin çıkış noktası, tamamen pedagojik bir ihtiyaç olup; öğrencilere sunulacak sınav kağıtları ve ders egzersizlerinde görsel bir standart ve tipografik mükemmellik sağlama amacı taşımaktadır.

·         2007: İlk Kamu Paylaşımı (Sürüm 0.1) Resmi kılavuzlarda "Version 0.1: First public release (2007)" olarak not edilen bu aşama, yazılımın dış dünyaya açılan ilk kapısı olmuştur. Bu sürüm, TikZ altyapısının devre şemalarına uygulanabilirliğinin ilk kanıtı niteliğindedir.

·         17 Nisan 2009: Küresel Yayılım ve CTAN Lansmanı (Sürüm 0.2) Paketin dünya çapındaki LaTeX kullanıcılarına ulaşması, CTAN (Comprehensive TeX Archive Network) üzerindeki ilk yayınlanışıyla gerçekleşmiştir. Kılavuz kaynak metinlerinde "Version 0.2: First public release on CTAN (20090417)" şeklinde tarihlenen bu gelişme, CircuiTikZ'in resmi bir LaTeX paketi olarak tescillenmesini sağlamıştır.

·         2010 – 2015: Geçiş ve Duraklama Dönemi Kurucu Massimo Redaelli'nin akademik görevinden ayrılmasını takiben, projenin geliştirme hızı ivme kaybetmiştir. Resmi kaynakların da teyit ettiği bu dönemde paket, topluluk tarafından kullanılmaya devam etse de yeni özelliklerin eklenmesi noktasında bir durağanlık yaşamıştır.

·         2015 Sonrası: Kurumsal İş Birliği ve Modern Rönesans Proje, 2015 yılından itibaren özellikle Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU) çevresindeki araştırmacıların (Stefan Lindner ve Stefan Erhardt gibi isimlerin) katkılarıyla yeniden canlanmıştır. Bu dönemde bakım çalışmaları sistematik hale gelmiş; kütüphane yarı iletkenler, karmaşık etiketleme sistemleri ve uluslararası sembol standartlarıyla donatılarak modern bir yapıya kavuşmuştur.

·         Günümüz (2025): Olgunluk ve Kararlılık CircuiTikZ, günümüzde son derece kararlı ve dinamik bir yapıdadır. CTAN üzerinden düzenli olarak yayınlanan güncellemeler (örneğin; 8 Temmuz 2025 tarihli Sürüm 1.8.2), paketin güncel mühendislik ihtiyaçlarına ve yeni grafik motoru gereksinimlerine tam uyumlu kalmasını sağlamaktadır.

CIRCUITIKZ İLE TEMEL ÇİZİM

KONFİGÜRASYON

Circuitikz’i kullanabilmek için öncelikle bazı temel konfigürasyonların hazır olması gerekir. Donanım açısından özel bir gereksinim yoktur; sıradan bir bilgisayar devre çizimleri için yeterlidir. Yazılım tarafında ise bir LaTeX dağıtımı (TeX Live, MikTeX veya MacTeX) ve bir editör (TeXstudio, VS Code eklentileri ya da benzeri) genellikle tercih edilir. Bununla birlikte, günümüzde çevrimiçi çözümler öne çıkmaktadır. Özellikle Overleaf, herhangi bir yazılım kurmaya gerek bırakmadan tarayıcı üzerinden doğrudan LaTeX belgeleri oluşturmayı ve Circuitikz paketini çalıştırmayı mümkün kıldığı için en yaygın kullanılan platformdur. Overleaf bu açıdan büyük kolaylık sağlar. Bunun dışında Papeeria, CoCalc, Authorea veya Verbosus gibi alternatif çevrimiçi editörler de mevcuttur; bu platformlar farklı işbirliği özellikleri, mobil uyumluluk veya ek entegrasyonlar sunarak kullanıcıya çeşitli seçenekler sağlar. İşletim sistemi açısından ise Circuitikz tamamen bağımsızdır; Windows, Linux ve macOS üzerinde aynı şekilde çalışır. Dolayısıyla kullanıcı, ister yerel kurulumla ister Overleaf ya da diğer çevrimiçi editörlerden biriyle çalışmayı seçsin, devre çizimlerine başlamadan önce yalnızca gerekli paketlerin yüklü olduğundan emin olması yeterlidir.

PAKET YÜKLEME

Paketin kurulum aşaması, kritik bir öneme sahiptir. Bu bağlamda, kullanılan sürümün resmi kılavuzunu (manual) referans almak, sürüm farklarından kaynaklanabilecek sözdizimi hatalarını önlemek adına birincil gerekliliktir.

LaTeX ekosisteminde CircuiTikZ'i kullanmanın en yaygın yolu, belgenin ön hazırlık (preamble) kısmında \usepackage{circuitikz} komutunu kullanmaktır. Bu temel kullanım çoğu proje için yeterlidir. 

Çizim süreci tipik olarak \begin{circuitikz} ... \end{circuitikz} ortamı içerisinde gerçekleştirilir. 

ConTeXt tarafında terminoloji "paket" yerine "modül" üzerine kuruludur. CircuiTikZ'in resmi belgelerinde de önerildiği üzere, kurulum için \usemodule[circuitikz] komutu kullanılır. LaTeX'teki ortam yapısının ConTeXt'teki karşılığı ise \startcircuitikz ... \stopcircuitikz bloklarıdır.

CircuiTikZ'in tarihçesi, paketin güvenilirliğini anlamak açısından önemlidir. 2007 yılında Massimo Redaelli tarafından Politecnico di Milano'da sınav hazırlama ihtiyacıyla başlatılan bu proje, zamanla küresel bir topluluğun desteğini almıştır. 2015'te Stefan Lindner ve Stefan Erhardt'ın, 2018'de ise Profesör Romano Giannetti'nin ekibe katılımı, paketin profesyonel yayıncılık standartlarına ulaşmasını sağlamıştır.

BAŞLICA PAKETLER

LaTeX'te paketleri \usepackage circuitikz komutuyla yüklenir. Bir pakete opsiyon eklenmesi gerekiyorsa bunun ayrı bir satırda tanımlanması gerekir. Opsiyonlar global, lokal ve yarı  global olarak üçe ayrılır. Global opsiyonlar virgül ile ayrılır ve köşeli parantez içine yazılır. Lokal opsiyonlar to[R, european] circuitikz veya to[R, american] circuitikz örneklerinde olduğu gibi lokal değişiklerdir. Yarı global opsiyonlar \begin{scope} tikz ve \end{scope} tikz ortamında yüklenir.

Birbiriyle ilişkili LaTeX paketlerinin ise tek bir \usepackage satırı ile yüklenmesi okunabilirliği artırır.

1. CIRCUITIKZ

Projenin kalbidir. Devre elemanlarını çizmek için gerekli tüm makroları içerir. ()

\usepackage{circuitikz}


2. TIKZ

Circuitikz aslında TikZ üzerine inşa edilmiş bir pakettir. Çoğu zaman Circuitikz paketi bunu otomatik yükler, ancak özel grafiksel düzenlemeler için doğrudan eklenmesi gerekebilir.

\usepackage{tikz}

Örnek:

\documentclass{article}

\usepackage{tikz}


\begin{document}

\begin{tikzpicture}

  \draw (0,0) -- (2,0) -- (2,2) -- cycle;

\end{tikzpicture}

\end{document}


3. SIUNITX

Mühendislik dünyasında değerlerin standartlara uygun yazılmasını sağlar.. Devre elemanlarına birim eklerken hata payını sıfıra indirir.

\usepackage{siunitx}  

4. AMSMATH

Etiketlerde veya açıklamalarda karmaşık matematiksel formüller (indisler, kesirler, Yunan harfleri) kullanmanıza olanak tanır. 

\usepackage{amsmath}

5. CIRCUITIKZİ GENİŞLETEN EK PAKETLER

Circuitikz’in temel işlevleri dışında, bazı özel amaçlı paketler de mevcuttur. Bu paketler CTAN üzerinden ayrı olarak dağıtılır ve devre çizimlerini belirli alanlarda genişletmek için kullanılır.


Örnekler:

- `tikzquads` → dört uçlu devre bloklarını kolayca çizmek için.  

- `tikzdotncross` → koordinat işaretleme ve çizgi üstü “atlama” efekti için.


Bu paketler Circuitikz’in parçası değildir, ancak ileri düzey devre belgelerinde tamamlayıcı olarak kullanılabilir. 

ORTAM SİSTEMİ

Circuitikz ortamı, TikZ’in tüm ortamlarını tamamen desteklerpgfonlayer ve scope bu listenin en sık kullanılanlarıdır. 

1. ANA DEVRE ORTAMI

Ana devre ortamı circuitikz ortamıdır.

\begin{circuitikz}

\end{circuitikz}

2. GENEL ÇİZİM ORTAMI

Genel çizim ortamı tikzpicture ortamıdır. 

3. LOKAL STİL ORTAMI

Lokal stil ortamı scope ortamıdır.

4. ARKA PLAN/ÖN PLAN KATMANLARI

\begin{pgfonlayer}{background}

\end{pgfonlayer}

Arka plan ve ön plan katmanları pgfonlayer ortamıdır. Kullanım amacı:
  • Arka plan kutuları

  • Vurgu çerçeveleri

  • Highlight bölgeleri

5. EK TIKZ KODLARI

Ek tikz kodları pgfextra ile kullanılır. Kullanım amacı:

  • TikZ path’inin dışında kalan ek komutlar

  • Hesaplamalar, makrolar

\begin{pgfextra}
  \node at (1,1) {Ek kod};
\end{pgfextra}

6. PATH KESME

TikZ düşük seviye path kesme ortamıdır. Kullanım amacı:

  • Path çizimini geçici olarak durdurmak

  • Araya başka grafikler eklemek

\begin{pgfinterruptpath}
  ... özel çizimler ...
\end{pgfinterruptpath}

7. LOKAL DÖNÜŞÜM

Lokal dönüşüm pgftransform* ile yapılır: pgftransformshiftpgftransformrotatepgftransformscale.

Kullanım amacı:

  • Lokal dönüşüm

  • Lokal ölçek

  • Lokal kaydırma

\begin{pgftransformrotate}{45}
  \draw <> ;
\end{pgftransformrotate}

8. NODE MATRİSİ

Node matrisi matrix ortamı ile oluşturulur. Kullanım amacı:

  • Op-amp blok diyagramları

  • Mantık devreleri

  • Grid yerleşimleri

\matrix (m) [matrix of nodes] {
  A & B \\
  C & D \\
};

9. PGFPLOTS ORTAMLARI

Ek paket ile kullanılır.

\begin{axis}
\end{axis}

CIRCUITIKZ'İN BLOK STANDARDI

\begin{circuitikz}[

  bipoles/length=1.2cm,

  voltage/distance=0.25,

  current/distance=0.25,

  tripoles/op amp/width=1.6,

  tripoles/op amp/height=1.2

]

\end{circuitikz}


CIRCUITIKZ'İN ESAS MİMARİSİ

CircuiTikZ’in çalışma mantığını ve temel mimarisini anlamak, karmaşık devre şemalarını hatasız bir şekilde kurgulamanın ilk adımıdır. Bu mimari, temelde TikZ grafik motorunun sunduğu esnekliği iki farklı yerleşim stratejisiyle yönetir: noktasal yerleşimler ve hat tabanlı çizimler.

Bu stratejilerden ilki, belirli bir koordinat noktasına sabitlenen ve genellikle devrenin aktif bileşenlerini temsil eden noktasal sembollerdir. Tipik olarak node[<>] yapısıyla kullanılan bu elemanlar, transistörler (BJT, MOSFET), operasyonel yükselteçler (op-amp) veya toprak (ground) bağlantıları gibi tek bir düğüm noktasında var olan bileşenler için tercih edilir. Bu yaklaşımda eleman, belirtilen koordinatın üzerine doğrudan "konur" ve devrenin merkez düğümlerini oluşturur.

Diğer temel yapı ise, devre şemasında iki farklı koordinat arasında bir köprü görevi gören hat üzerindeki elemanlardır. to[<>] komutuyla hayata geçirilen bu yöntem; direnç, kondansatör, bobin veya güç kaynakları gibi iki ucu bulunan pasif ve aktif bileşenleri çizmek için kullanılır. Bu yapının en büyük avantajı, sadece elemanı iki nokta arasına yerleştirmekle kalmayıp, aynı zamanda bu bileşen üzerine akım okları ($i$) veya gerilim etiketleri ($v$) gibi ek bilgilerin son derece pratik bir şekilde eklenmesine imkan tanımasıdır.

KOMUTLAR

Circuitikz’te komutlar beş ana gruba ayrılır: Node komutları, çizim komutları, eleman komutları, özel eleman komutları ve yardımcı paket komutları. 

Node komutları devre ortamında bağımsız olarak kullanılabilir; eleman komutları ise bir çizgi path’i üzerinde çalıştığı için genellikle \draw komutunun içinde yer alır. 

Özel eleman komutları bağlantı durumlarını (örneğin açık devre veya kısa devre) ifade ederken, yardımcı paket komutları devre çizimlerinin yanında birim gösterimi, matematiksel formüller veya grafikler için kullanılır.



1. NODE KOMUTLARI

Circuitikz node türleri koordinat tabanlı sembollerdir. [ ] içinde sınırsız parametre alabilirler: rotate, scale, name, label, shift…. { } içeriği opsiyoneldir. Bazılarının özel anchor noktaları vardır:

  • npn → B, C, E

  • op amp → +, –, out


1.1. TOPRAK

Temel

node[

    ground

]{}

Opsiyonel

node[

    ground,

    name=<isim>,

    label=<etiket>,

    rotate=<açı>,

    scale=<oran>,

    xshift=<değer>,

    yshift=<değer>,

    fill=<renk>,

    draw=<çizgi>,

    line width=<kalınlık>,

    anchor=<anchor>,

    minimum width=<genişlik>,

    minimum height=<yükseklik>,

    inner sep=<iç_boşluk>,

    outer sep=<dış_boşluk>

]{<içerik>}



1.2. CIRCLE

Temel çizim

node[circ]{}

Seçenekli çizim

node[

    circ,

    name=<isim>,

    label=<etiket>,

    rotate=<açı>,

    scale=<oran>,

    fill=<renk>,

    draw=<çizgi>,

    anchor=center

]{<içerik>}

1.3. OPAMP

Temel

node[op amp]{}

Opsiyonel

node[
    op amp,
    name=<isim>,
    label=<etiket>,
    rotate=<açı>,
    scale=<oran>,
    xshift=<değer>,
    yshift=<değer>,
    anchor=<+|−|out>
]{}

1.4. İKİDEN FAZLA UÇLU YARI İLETKENLER

TRANSİSTÖR

Temel

node[npn]{}

Opsiyonel

node[
    npn,
    name=<isim>,
    label=<etiket>,
    rotate=<açı>,
    scale=<oran>,
    xshift=<değer>,
    yshift=<değer>,
    anchor=<B|C|E>
]{}

MOSFET
Temel
node[nmos, name=M1]

2. ÇİZİM KOMUTLARI
İki çizim komutu vardır. Bunlar Tikz'den gelir:
\draw
\node

3. ELEMAN KOMUTLARI

Elemanlar hat boyunca yerleşen sembollerdir. Eleman komutu hat segmentinin bir parçasıdır, bağımsız bir nesne değildir. 

Eleman komutları circutikz'e özgüdür. Eleman genel olarak,
(<koordinat1>) to[<Eleman>, <parametreler>] (<koordinat2>)
biçiminde kodlanır.

3.1.  PASİF ELEMANLAR
Direnç temel çizimi: 
to[R]
Kondansatör temel çizimi: 
to[C]
Bobin temel çizimi: 
to[L]

3.2. KAYNAKLAR
DC gerilim temel çizimi:
to[V]
DC akım temel çizimi:
to[I]
AC gerilim temel çizimi:
to[sV]
AC akım temel çizimi:
to[sI]
Pil temel çizimi:
to[battery]

3.3. İKİ UÇLU YARI İLETKENLER
DİYOT
to[D]

ZENER DİYOT
to[Zener]
LED
to[led]
4. BAĞLANTI ELEMANLARI
Bağlantı elemanları, devre elemanlarından ziyade bağlantı durumlarını temsil eden sembolleri içerir.
AÇIK DEVRE
to[open]   → İki nokta arasında bağlantı olmadığını, yani açık devreyi gösterir.
KISA DEVRE
to[short]   → İki nokta arasında doğrudan bağlantı olduğunu, bir başka deyimle kısa devreyi gösterir.
5. YARDIMCI PAKET KOMUTLARI 
Circuitikz ile devre çizimleri yapılırken yalnızca Circuitikz ve TikZ komutları kullanılmaz; aynı zamanda LaTeX’in diğer paketlerinden gelen komutlar da sıkça devre belgelerine entegre edilir. Bu komutlar devre çiziminden çok, metin içinde sayıların, birimlerin veya matematiksel ifadelerin doğru biçimde yazılması için kullanılır.

Örnekler:

siunitx paketinden:

\SI{0.025}{\kilo\ohm} → sayıyı ve birimi tipografik olarak doğru biçimde yazar.

\si{\volt} → yalnızca birim sembolü verir.

\ohm, \volt, \ampere, \hertz → birim komutlarıdır, tek başına sembol üretir.

\kilo, \milli, \micro, \mega, \giga → ön ek komutlarıdır, birimlerle birlikte kullanıldığında doğru ölçeklendirme sağlar.

amsmath paketinden:

\begin{align} ... \end{align} → denklemleri hizalı biçimde düzenler.

\begin{cases} ... \end{cases} → parça parça tanımlı fonksiyonları gösterir.

pgfplots paketinden:

\begin{axis} ... \end{axis} → devre analizlerinde grafik çizimleri için kullanılır.

Bu komutlar doğrudan Circuitikz’in parçası olmasa da, devre belgelerinin bütünlüğü açısından önemlidir. Çünkü devre çizimlerinin yanında doğru birim gösterimi, matematiksel formüller ve grafikler de çoğu zaman aynı belgede yer alır. Dolayısıyla yardımcı paket komutları, Circuitikz kullanımının tamamlayıcı unsurlarıdır.

👉 Böylece siunitx’in birim komutları (\ohm, \volt vb.) ve ön ek komutları (\kilo, \milli vb.) de metne entegre edilmiş oldu. Bu haliyle okuyucu hem sayı–birim yazımını hem de devre belgelerinde kullanılan ek paketlerin rolünü net bir şekilde görür. 
6. CIRCUITIKZSET İLE VERİLEN AYARLAR
 - siunitx → Birim yazımını siunitx ile entegre eder. 
 - nosiunitx → Varsayılan; siunitx entegrasyonu kapalıdır.




CIRCUITIKZ İLE ÇİZİM SEÇENEKLERİ


YÜKLEME ANAHTARLARI

CIRCUTIKZ İÇİN YÜKLEME SEÇENEKLERİ


Circuitikz paketi, farklı standartlara ve yazım biçimlerine uyum sağlayabilmek için çeşitli yükleme parametreleri ile çağrılır. Bu parametreler doğrudan \usepackage[...] satırında yazılır; \begin{document} veya \begin{circuitikz} ortamlarının içine değil, paketi yüklerken belirtilir. Bu söz diziminde her parametre bir anahtar kelime olarak girilir ve virgülle ayrılır. Örneğin:

\usepackage[american,siunitx,RPvoltages]{circuitikz}

Burada american, siunitx ve RPvoltages parametreleri paketin davranışını belirler. Devre çizimleri ise her zamanki gibi \begin{circuitikz}...\end{circuitikz} ortamında yapılır.

Böylece devre elemanlarının görünümü, gerilim oklarının yönü ve birimlerin yazım biçimi en baştan belirlenmiş olur. Aşağıda en sık kullanılan ve pratikte hemen her çalışmada karşımıza çıkan bazı temel parametreler yer almaktadır:


american. ANSI/IEEE sembollerini kullanır. Özellikle Amerika’da yaygın olan devre gösterimlerini tercih edenler için uygundur.


european. IEC sembollerini kullanır. Avrupa standartlarına göre çizim yapmak isteyenler için tercih edilir.


siunitx. Birimlerin doğru ve tipografik olarak tutarlı yazılmasını sağlar. Özellikle bilimsel belgelerde birimlerin standart biçimde gösterilmesi için kullanılır.


RPvoltages. Gerilim oklarının yönünü RP (Reference Point) kuralına göre ayarlar. Bu sayede voltaj gösterimleri daha sistematik ve anlaşılır hale gelir.


Örnek kod parçası:


\documentclass{article}

\usepackage[american,siunitx,RPvoltages]{circuitikz}


\begin{document}

\begin{circuitikz}

\end{circuitikz}

\end{document} 

BÖLGESEL STİL AYARLARI

europeanvoltages, americanvoltages, europeanresistors, americanresistors

GERİLİM YÖNÜ AYARLARI

oldvoltagedirection, RPvoltages, EFvoltages

DİYOT VE FET AYARLARI

fetbodydiode, fetsolderdot, emptypmoscircle

PAKET ENTEGRASYONU

siunitx, nosiunitx

UYUMLULUK

compatibility, betterproportions

TIKZ İÇİN YÜKLEME ANAHTARLARI


TikZ paketi, grafik çizimlerinde esneklik sağlamak için çeşitli yükleme parametreleriyle çağrılabilir. Bu parametreler, paketin davranışını ve kullanılacak kütüphaneleri belirler. Circuitikz doğrudan TikZ üzerine kurulu olduğundan, TikZ’in yükleme biçimini bilmek devre çizimlerinde de faydalıdır. Parametreler \usepackage[...] satırında köşeli parantezler içinde yazılır ve virgülle ayrılır. 

TikZ çoğunlukla ek kütüphanelerle birlikte kullanılır. Bunlar doğrudan \usetikzlibrary{...} komutuyla çağrılır. Çok yaygın olan bazı kütüphaneler şunlardır:


arrows — Ok stillerini tanımlar.


positioning — Nesnelerin birbirine göre konumlandırılmasını kolaylaştırır.


shapes — Daire, dikdörtgen, elips gibi hazır şekilleri sağlar.


calc — Koordinat hesaplamaları için kullanılır. 

Aşağıdaki örnekte arrows ve positioning kütüphaneleri eklenmiştir. Böylece ok stili tanımlanmış ve düğümler birbirine göre konumlandırılmıştır. 

\documentclass{article}

\usepackage{tikz}

\usetikzlibrary{arrows,positioning}


\begin{document}

\begin{tikzpicture}

  \node (A) {Başlangıç};

  \node[right=2cm of A] (B) {Bitiş};

  \draw[->] (A) -- (B);

\end{tikzpicture}

\end{document}


SIUNITX İÇİN YÜKLEME ANAHTARLARI


siunitx paketi, birimlerin doğru ve tipografik olarak tutarlı yazılması için kullanılır. Paket yüklenirken veya komutlar içinde bazı parametreler verilebilir. En sık kullanılanlardan bazıları:


per-mode=symbol — Bölü işareti için sembol (/) kullanır.


per-mode=fraction — Bölü işareti yerine kesir biçimi kullanır.


detect-all — Yazı tipi özelliklerini otomatik algılar.siunitx paketi, birimlerin doğru ve tipografik olarak tutarlı yazılması için kullanılır. Paket yüklenirken veya komutlar içinde bazı parametreler verilebilir. En sık kullanılanlardan bazıları:


per-mode=symbol — Bölü işareti için sembol (/) kullanır.


per-mode=fraction — Bölü işareti yerine kesir biçimi kullanır.


detect-all — Yazı tipi özelliklerini otomatik algılar.

Örnek satır:

\usepackage[per-mode=symbol, detect-all]{siunitx}


Örnek kod parçası: 


\documentclass{article}

\usepackage[per-mode=symbol]{siunitx}


\begin{document}

Hız: \SI{90}{\kilo\meter\per\hour} \\

Gerilim: \SI{12}{\volt}

\end{document}


DEĞER ZORUNLU ANAHTARLAR 

Değer zorunlu anahtarlar mutlaka key=value yazılır, tek başına yazmak yetmez:


per-mode = symbol 


output-decimal-marker = {,} (Türkçe ondalık virgül) 


group-separator = {\,} (binlik ayırıcı) 


group-minimum-digits = 4 (4 haneliden itibaren gruplama) 


group-digits = integer (sadece tam kısım gruplansın) 


inter-unit-product = \ensuremath{{}\cdot{}} (birimler arası çarpım işareti) 


range-units = single (aralıkta birimi bir kez yaz) 


mode = text / mode = math (çıktı modunu seç)



BOOLEAN ANAHTARLAR 

Anahtar diye tek başına yazılabilir (bu, anahtar=true demektir) ve istenilirse =false ile kapatılır.


detect-all (hepsini açar) 


detect-none (hepsini kapatır) 


detect-family 


detect-weight 


detect-shape 


detect-mode


ORTAM SEÇENEKLERİ

AMSMATH İÇİN ORTAMLAR


amsmath paketi, gelişmiş matematik ortamları sağlar. Paket yüklenirken genellikle parametre verilmez, ama sağladığı ortamlar ve seçenekler çok yaygındır. En sık kullanılanlardan bazıları:


align — Denklem dizilerini hizalamak için.


cases — Parçalı fonksiyonları yazmak için.


gather — Denklem gruplarını ortalamak için. 

Örnek: 

\documentclass{article}

\usepackage{amsmath}


\begin{document}

\begin{align}

  y &= 2x + 3 \\

  y &= x^2

\end{align}



\[

f(x) = 

\begin{cases}

  x^2 & x \geq 0 \\

  -x  & x < 0

\end{cases}

\]



\end{document}


TIKZPICTURE İÇİN ANAHTARLAR

tikzpicture ortamı, tüm çizimin kapsayıcı ortamıdır. Köşeli parantez içinde verilen seçenekler global stil ayarlarını belirler. Bu ayarlar ortam içindeki tüm çizimlere etki eder.


Yaygın seçenekler:


scale=... → Çizimin ölçeğini değiştirir.


line cap=round → Çizgi uçlarını yuvarlatır.


line join=bevel → Çizgi birleşimlerini keskinleştirir.

Örnek:

\begin{tikzpicture}[scale=2, line cap=round]

  \draw (0,0) -- (2,0) -- (2,2) -- cycle;

\end{tikzpicture}


LOKAL STİL ORTAMINDA ANAHTARLAR 

scope ortamı, çizimin belirli bir bölümüne lokal stil ayarları uygulamak için kullanılır. Devre analizi açısından çok önemlidir; çünkü bir devrenin sadece bir kısmına farklı ölçek, renk veya dönüşüm uygulanabilir.


Yaygın seçenekler:


rotate=... → Çizimi belirli bir açıyla döndürür.


shift={(x,y)} → Çizimi belirli bir vektör kadar kaydırır.


color=... → Çizim rengini değiştirir.


thick, dashed → Çizgi kalınlığı ve tipi.

Örnek 1 – Lokal döndürme: 

\begin{scope}[rotate=30]

  \draw (0,0) to[R=$R_1$] (2,0);

\end{scope}


Örnek 2 – Lokal kaydırma ve renk:

\begin{scope}[shift={(3,0)}, color=red]

  \draw (0,0) to[C=$C_1$] (0,-2);

\end{scope}



👉 Devre analizi bağlamında scope, alt devre bloklarını farklı konumlarda veya farklı stillerde göstermek için çok kullanışlıdır.

NODE MATRİSİ ORTAMINDA ANAHTARLAR 

matrix komutu, düğüm (node) tabanlı tablolar oluşturur. Köşeli parantez içindeki seçenekler matrisin yapısını belirler.


Yaygın parametreler:


matrix of nodes → Matrisin node tabanlı olduğunu belirtir.


nodes={draw, circle} → Tüm hücrelerdeki node’lara ortak stil uygular.


row sep=..., column sep=... → Satır ve sütun aralıklarını ayarlar. Örnek: 

\matrix (m) [matrix of nodes, nodes={draw,circle}, row sep=1cm, column sep=1cm] {

  A & B \\

  C & D \\

};

PGFPLOTS ORTAMLARINDA ANAHTARLAR 

axis ortamı, pgfplots paketinin eksen tabanlı çizim ortamıdır. Köşeli parantez içindeki seçenekler eksenlerin görünümünü ve grafiğin stilini belirler.


Yaygın parametreler:


xlabel=..., ylabel=... → Eksen etiketleri.


grid=major → Ana ızgaraları gösterir.


legend pos=... → Açıklama kutusunun konumu.


xmin=..., xmax=... → Eksen sınırları.


Örnek:

\begin{axis}[xlabel=$V$, ylabel=$I$, grid=major]

  \addplot {x/2};

\end{axis}



Hiç yorum yok:

Yorum Gönder