'분류 전체보기'에 해당되는 글 114건

  1. 2010.11.06 LaTeX 명함 패키지
  2. 2010.06.24 MMS 저장하기
  3. 2010.05.03 사겼다라고 쓰지 말고 이렇게 쓰자.
  4. 2010.04.14 OCR in Adobe Acrobat 9
  5. 2010.04.03 LaTeX 코드 모음 4: array 그리기
  6. 2010.03.20 LaTeX 코드 모음3
  7. 2010.03.20 LaTeX 코드 모음2 (Timing Diagram)
  8. 2010.03.20 gnuplot 코드 모음2
  9. 2010.03.20 gnuplot 코드 모음1
  10. 2010.03.20 argv 처리
  11. .
LaTeX2010. 11. 6. 02:13
LaTeX을 이용하여 명함(bussiness card)을 만들 수 있는 패키지이다.

원본 파일에 첨부된 pdf 캡쳐.
0


Posted by asdfzxcv
아직미분류2010. 6. 24. 02:48
1. mplayer 이용
mplayer -dumpstream -dumpfile filename mms://location

2. vlc 이용
vlc mms://location --sout filename

mmsrip, mimms 등도 있다고 하는데 써보지 않았다.

mplayer에서는 저장이 안 되는데 vlc에서는 저장이 되는 경우가 있었다.
원인은 잘 모르겠다.

윈도우에서는 넷트랜스포트(?) 등의 프로그램도 사용할 수 있다.
하지만 필자는 그냥 mplayer, vlc를 사용한다.

http://kldp.org/node/51823
http://kldp.org/node/110864

Posted by asdfzxcv
아직미분류2010. 5. 3. 11:58
사겼다는 틀린 말이고, 사귀었다가 맞는 말입니다.
그런데 유니코드를 쓰면 이런 것이 가능합니다.

http://www.ktug.or.kr/xe/?mid=KTUG_open_board&document_srl=8532

굳이 TeX을 쓰지 않고, 메모장에서도 가능하죠.

Posted by asdfzxcv
아직미분류2010. 4. 14. 15:17
학교 라이센스 덕분에 acrobat도 써 보게 되었는데 여러 가지 면에서 reader보다 훨씬 좋다.

OCR에서 ClearScan 기능이 유용하다.
http://blogs.adobe.com/acrolaw/2009/05/better_pdf_ocr_clearscan_is_smal.html

Posted by asdfzxcv
LaTeX2010. 4. 3. 10:40
여기서 힌트를 얻었다.
http://forcecore.tistory.com/1017

그리고 이것 저것 뜯어 고쳐서 다음과 같은 코드를 만들었다.


%%%%%%%%%%%%%%%%%%%%%%%%%%

\def\sz{6mm}

\tikzstyle{block}

= [draw, fill=black!10, rectangle,

minimum height=\sz, minimum width=\sz]

\tikzstyle{darkblock}

= [draw, fill=black!40, rectangle,

minimum height=\sz, minimum width=\sz]

\tikzstyle{index}

= [draw=none, fill=none, font=\tiny, inner sep=0pt]

\newcounter{myind}

%%%%%%%%%%

\newcommand{\myarray}[2]{

\def\pivot{#1}

\def\arr{#2}

%\node[plain] {A};

\setcounter{myind}{0}

\foreach \item in \arr

{

\addtocounter{myind}{1}

\if\item\pivot

\node[darkblock] at (\themyind*\sz,0) {\item};

\else

\node[block] at (\themyind*\sz,0) {\item};

\fi

\node[index] at (\themyind*\sz,0.65*\sz) {\themyind};

% good positioning is difficult T.T;

}

}

%%%%%%%%%%

\newcommand{\myarrow}{

\node[single arrow, draw, fill=black!40, minimum width=0.15cm, minimum height=1.2cm] {};

}

%%%%%%%%%%


이제
\myarray{9}{3, 2, 9, 0, 7, 5, 4, 8, 6, 1}
라고 적으면 9를 pivot으로 하는 array가 그려진다.

다음과 같이 사용해도 된다.
\newcommand{\myarrayx}[4]{
\begin{tikzpicture}
\myarray{#2}{#3}
\end{tikzpicture}
&
\begin{tikzpicture}
\myarrow
\end{tikzpicture}
&
\begin{tikzpicture}
\myarray{#2}{#4}
\end{tikzpicture} \\
}
%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcounter{mysubfigcounter}
\setcounter{mysubfigcounter}{1}
\newcommand{\mysubfigcap}{
\multicolumn{3}{c}{\footnotesize (\alph{mysubfigcounter})} \\\\
\addtocounter{mysubfigcounter}{1}
}
\begin{figure}[ht]
\centering
\begin{tabular}{rcl}
\myarrayx{1}{9}{3, 2, 9, 0, 7, 5, 4, 8, 6, 1}{3, 2, 0, 7, 5, 4, 8, 6, 1, 9}
\mysubfigcap
\myarrayx{2}{8}{3, 2, 0, 7, 5, 4, 8, 6, 1}{3, 2, 0, 7, 5, 4, 6, 1, 8}
\mysubfigcap
\end{tabular}
\end{figure}

결과는
아 위에 결과는 틀린 결과이다. ㅠㅠ

Posted by asdfzxcv
LaTeX2010. 3. 20. 15:38
역시 대부분 학부 때 정리한 것을 다시 정리하면서 옮긴 것이다.
새롭게 추가한 내용은 많지 않다.

소스 코드 넣는 법이다.
컬러풀하게 넣으려면 highlight 등을 쓰는 것도 괜찮지만, 그정도는 필요 없고 적당히 넣으려면 다음처럼 하면 된다.
물론 ktug.or.kr에서 도움을 받았다.

\url{http://faq.ktug.or.kr/faq/SourceCodeListing}\\
\url{http://faq.ktug.or.kr/faq/PDFHyperLink} % url 넣는 법
fancyvrb 사용..

\begin{Verbatim}[frame=lines,label=helloworld.c,numbers=left]

#include <stdio.h>

int main(void)

{

printf("Hello, world!");

return 0;

}

\end{Verbatim}

moreverb, listings 등도 있음.


그림과 표 넣기
이것도 방법이 많다.
\begin{figure}[ht]
    \begin{minipage}{.30\textwidth}
        \includegraphics[width=\textwidth]{pic/12.png}
    \end{minipage}
    \hfill
    \begin{minipage}{.65\textwidth}
        \begin{center}
        \begin{tabular}{ccc|cccccccc}
            \multicolumn{3}{c|}{Input}&\multicolumn{8}{|c}{Output}\\
            $\mathrm{I_2}$&$\mathrm{I_1}$&$\mathrm{I_0}$&%
            $\mathrm{F_0}$&$\mathrm{F_1}$&$\mathrm{F_2}$&%
            $\mathrm{F_3}$&$\mathrm{F_4}$&$\mathrm{F_5}$&%
            $\mathrm{F_6}$&$\mathrm{F_7}$\\\hline
            0&0&0&1&0&0&0&0&0&0&0\\
            0&0&1&0&1&0&0&0&0&0&0\\
            0&1&0&0&0&1&0&0&0&0&0\\
            0&1&1&0&0&0&1&0&0&0&0\\
            1&0&0&0&0&0&0&1&0&0&0\\
            1&0&1&0&0&0&0&0&1&0&0\\
            1&1&0&0&0&0&0&0&0&1&0\\
            1&1&1&0&0&0&0&0&0&0&1\\
        \end{tabular}
    \end{center}
    \end{minipage}
\caption{이게뭘까?}\label{fig126}
\end{figure}
그림 두 개 넣기도 이런 식으로 하면 되고, 그림의 폭이 크면 \begin{adjustwidth}{-2.5cm}{-2.5cm} \end{adjustwidth}를 쓰면 된다. 또는 landscape 패키지를 써써 옆으로 넣기도 한다.

graphviz
\url{http://www.graphviz.org/}

테두리 박스
\url{http://faq.ktug.or.kr/faq/LaTeXBoxes}

SI 단위

SIunits라는 패키지가 있다. 그냥 수식 안에서 \textrm을 쓰는 방법도 있다.


수학 기호
http://www.ktug.or.kr/jsboard/read.php?table=operate&no=14440
라플라스 기호, 푸리에 트랜스폼 기호는 $\mathcal{L}$, $\mathcal{F}$를 사용한다. \usepackage{calrsfs}또는 \usepackage{mathrsfs}를 이용하면 폰트를 바꿀 수 있다. 하지만 폰트를 바꾸지 않고도 많이 쓴다.
\mathcal{F}[x(t)] = X(j\omega) = \int_{-\infty}^{\infty} x(t)e^{-j\omega t}dt

\mathcal{L}[f(t)] = \int_{0^-}^{\infty} f(t)e^{-st}dt


e 같은 것은 roman으로 식자하기도 하고, italic으로 식자하기도 한다. 미분 기호도 그렇다. 다음 글을 참고하자.

http://www.ktug.or.kr/jsboard/read.php?table=operate&no=4830

http://www.electriceditors.net/edline/vol3/3-4.txt

아무튼 미분 기호를 roman으로 쓰려면

\newcommand{\diff}{\mathrm{d}}

처럼 하면 된다.

Rank 등은 확실히 roman으로 하는 것이 맞다. log등은 \log라고 하면 되지만, \rank는 없으므로 다음과 같이 만들어주면 된다.

\DeclareMathOperator{\rank}{Rank}

몇 가지 테스트:

\Re, \mathfrak{R}, \mathrm{R}\\

\Im, \mathfrak{I}, \mathrm{I}\\

\mathbb{N}, \mathbb{Z}, \mathbb{Q},

\mathbb{R}, \mathbb{C}\\

\ell\\

\frac{dy}{dx} \qquad

\frac{\mathrm{d}y}{\mathrm{d}x}

\qquad \frac{\diff y}{\diff x}\\

Rank(A) \qquad \rank(A)\\

a_{min}, a_{\textrm{min}}

a_{\mbox{min}}, a_{\min}


아무튼 링크된 글과 그 답글들을 요약해보겠다.
단, 요약 과정에서 원문의 뜻이 달라졌을 수도 있다.

먼저 yhchoe님의 글:
대부분 dx의 d는 이탤릭으로 쓰는 경우가 많고, 델타 x의 \Delta는 세워쓴다고 한다.

복소수의 실수, 허수 부분을 나타내는 operator의 경우
유럽에서는 $\Re$(=$\mathfrak{R}$), $\Im$(=$\mathfrak{I}$를 쓰지만
미국에서는 그냥 Re, Im을 세워서 쓴다.

라플라스, 푸리에는 \mathscr을 쓴다고 한다.
(아까 적은 예제의 \mathcal과 \mathscr의 차이는 잘 모르겠다.
아무튼 이 분은 \mathscr을 언급하셨다.)

공집합 기호는 \emptyset으로 알고 있지만, amssymb 스타일에서 \varnothing을 쓰는 것이 맞다.
(이 부분은 왜 그런지 잘 모르겠다. 대부분 \emptyset을 많이 쓰는 것으로 알고 있다.)

자연수, 정수, 등등의 집합은 \mathbb{N}, \mathbb{Z}, \mathbb{Q}, \mathbb{R},\mathbb{C}로 쓰는 것이 좋다.

소문자 l은 보통 수식 속에서 $\ell$로 쓴다.

=====================================================================================
공집합 기호는 조금 애매하다.
그리스 문자 phi처럼 보이기도 하지만 확실한 것은 공집합 기호와 그리스 문자 phi는 다른 기호이다.
모양도 확실히 다르고 뜻도 다르니까.

그리스 문자 phi는 모양이 여러 가지가 있는데, 유니코드에는 4 개 이상이 있고, LaTeX에는 \Phi, \phi, \varphi가 있다.
http://en.wikipedia.org/wiki/Phi_%28letter%29

0이 빗금친 모양으로 생긴 여러가지 기호들:
http://en.wikipedia.org/wiki/%C3%98_%28disambiguation%29

모양이 비슷해도 의미가 다르면 다른 기호로 처리해서 유니코드에서도 따로 들어간다.


\phi가 아닌 것은 확실하나 \emptyset인지 \varnothing인지는 모르겠다.

=====================================================================================


아까 위에서 \DeclareMathOperator{\rank}{Rank}를 언급했다.

이것은 ams


하지만 다음 글에서 나오는 것처럼 하는 방법도 있다.

http://faq.ktug.or.kr/wiki/pds/UsefulDocuments/tex_ywk_xe.pdf


$\mathop{\mathrm{span}}\nolimits} \{v_1,v_2,\ldots,v_n\}$
$\operatorname{span} \{v_1,v_2,\ldots,v_n\}$
윽, 여기서 \nolimits는 뭐지?

\limits를 쓰면 아래 첨자를 쓸 때, 마치 lim아래 들어가듯이 아래로 들어가고, \nolimits는 옆으로 미는 것이고, \diplaylimits라는 것도 있고, intlimits, nosumlimits라는 옵션도 있다. 직접 써보기 전에는 뭐가 다른지 알기 힘들듯.


그 외에도 몇가지 내용이 있으니 링크된 그을 읽어보자.







Posted by asdfzxcv
LaTeX2010. 3. 20. 14:50
무려 학부 2학년 2학기에 작성한 코드. ㄷㄷㄷ
Pascal T. Wolkotte와 Jochem Rutgers가 만든 timing 패키지를 사용했다.
같은 이름의 패키지가 있었던 걸로 기억한다.
http://www.texample.net/tikz/examples/timing-diagram/

코드들:


사실 복잡해지면 시뮬레이션 창에서 캡쳐해서 그림으로 붙여 넣는 것이 훨씬 쉽다. 설정을 잘 바꿔주면 색상 등은 변경이 가능할 것이다. 그 외에 timing diagram을 마우스로 쓱쓱 그릴 수 있는 프로그램도 있던 것 같다. 뭐였는지 기억은 안 난다.

카르노 맵은 kvmacros를 이용하는 방법이 있다. 다음처럼 간단한 명령으로 가능하다.
\karnaughmap{4}{$f:$}{{$a$}{$b$}{$c$}{$d$}}{0110011001100110}{}
http://www.ctan.org/tex-archive/macros/latex/contrib/karnaugh/

아니면 Dia로 그려서 mp로 저장하고 pdf로 바꾸는 방법도 사용해 본 것 같다.

State diagram 역시 Dia로 그릴 수 있고, dot2tex을 써도 된다. 직접 tikz 노가다해도 된다.
당시에는 dot2tex을 쓴 듯하다.


Posted by asdfzxcv
gnuplot2010. 3. 20. 14:26
학부 3학년 1학기 전자회로 실험을 할 때 썼던 코드이다.
오실로스코프에서 저장한 데이터를 플롯하는데 사용하였다.
#!/bin/bash

FILES[0]="a.csv 2 limiter Limiting Circuit"
FILES[1]="b.csv 2 clamper Clamper Circuit"
FILES[2]="c.csv 1 doubler Voltage Doubler"
FILES[3]="d.csv 2 tripler Voltage Tripler"

for i in "${FILES[@]}"
do
set -- $i
echo set title \"$4 $5\" > $3.plot
echo set term png >> $3.plot
echo set output \"$3.png\" >> $3.plot
echo set xlabel \"Time\" >> $3.plot
echo set ylabel \"Voltage\" >> $3.plot
echo set datafile separator \",\" >> $3.plot
echo set grid >> $3.plot
echo set key below >> $3.plot


if [ "$2" = "1" ]
then
echo plot \"$1\" u 1:2 with l title \"V_in\", \"$1\" u 1:3 with l title \"V_out\" >> $3.plot
else
echo plot \"$1\" u 1:3 with l title \"V_in\", \"$1\" u 1:2 with l title \"V_out\" >> $3.plot
fi
echo show output >> $3.plot

#echo set term latex >> $3.plot
#echo set output \"$3.tex\" >> $3.plot
#echo replot >> $3.plot
#echo show output >> $3.plot

gnuplot $3.plot

done

exit 0

예제 그림은 하나만


Posted by asdfzxcv
gnuplot2010. 3. 20. 14:13
학부 4학년 2학기에 작성했던 코드.
ns2 시뮬레이션 결과를 그리려고 했던 것이다.
여러 데이터에 대해 그래프를 그려야 되는데 매번 그리기도 어려우므로 이런 식으로 했다.
사실 gnuplot 사용법도 되지만 bashrc 사용법도 된다.
bashrc에서 루프나 변수 사용은 매번 헷갈리므로

hw4.sh
그래프 다섯 개를 그렸다.
#! /bin/bash
rm -f hw4.log
for i in 50 1000; do # paket size
    for j in 0 2000; do # RTS Threshold
        # clean data files
        rm -f node0.dat
        rm -f node1.dat
        rm -f total.dat
        for k in {1..5}; do # N
            # run ns
            ns hw4.tcl $k $i $j
        done
        mv total.dat total_${i}_$j.dat
        # Plot
        echo > hw4.plot
        echo "set term png" >> hw4.plot
        echo "set grid" >> hw4.plot
        echo "set key default" >> hw4.plot
        echo "set xlabel \"\"" >> hw4.plot
        echo "set ylabel \"Mbps\"" >> hw4.plot
        echo "set xrange [0:6]" >> hw4.plot
        echo "set xtics 1,1,5" >> hw4.plot
        echo "set title \"hw4_${i}_$j\"" >> hw4.plot
        echo "set output \"hw4_${i}_$j.png\"" >> hw4.plot
        echo "plot \"node0.dat\" with linespoints title \"node0\", "\
        "\"node1.dat\" with linespoints title \"node1\"" >> hw4.plot
        echo "show output" >> hw4.plot
        gnuplot hw4.plot
    done
done
# Plot
echo > hw4.plot
echo "set term png" >> hw4.plot
echo "set grid" >> hw4.plot
echo "set key default" >> hw4.plot
echo "set xlabel \"\"" >> hw4.plot
echo "set ylabel \"Mbps\"" >> hw4.plot
echo "set xrange [0:6]" >> hw4.plot
echo "set xtics 1,1,5" >> hw4.plot
echo "set title \"hw4_total\"" >> hw4.plot
echo "set output \"hw4_total.png\"" >> hw4.plot
echo "plot \"total_50_0.dat\" with linespoints title \"50_0\", "\
"\"total_50_2000.dat\" with linespoints title \"50_2000\", "\
"\"total_1000_0.dat\" with linespoints title \"1000_0\", "\
"\"total_1000_2000.dat\" with linespoints title \"1000_2000\"" >> hw4.plot
echo "show output" >> hw4.plot
gnuplot hw4.plot

hw4.tcl은 주제와 과련이 없지만 그냥 적어둔다.

그림 그린 결과도 올린다.


hw3.sh도 비슷하다. unset border가 있는정도?
그래프 9 개를 그렸다.

hw2_2_3.sh는 다음과 같다.
무려 그래프 36 개를 그렸다. hw2를 보면 알겠지만 가장 먼저 작성한 코드.
36개를 수작업으로 그릴 수 없어서 이렇게 했던 것.


Posted by asdfzxcv
프로그래밍/C/C++2010. 3. 20. 11:50
http://www.gnu.org/s/libc/manual/html_node/Parsing-Program-Arguments.html

프로그램에서 argument 처리하는데 쓰는 라이브러리
getopt, argp, suboptions
Posted by asdfzxcv