発言者: tDB
発言日: 2005 10/01 16:28
発言元: 61.121.39.84
いろいろと貴重なご意見をありがとうございます。
次版に取り入れるべく検討させていただきます。
> ・単位長さが小さい場合の図の書き方
TeX は,計算ソフトではありませんから,
それに計算をさせることには限界があります。
大きい数の掛け算は --- 256*256 --- でオーバーフローします。
小さい数同士の掛け算では,桁落ちします。
例えば
0.00294*0.02718
の結果は,下の re3635a.tex を実行してみてください。
(このリストには,emath は関係していません。)
それと近い計算結果との差を作ると 0 となってしまいます。
ということで,\unitlength を 10mm 程度に設定することで
TeX の計算精度でなんとかしようというのが emath パッケージの苦しい台所事情です。
この桁落ちは,ad-bc の計算,
例えば \LandL など二直線の交点を求める際,顕著に表れます。
(この件では,斜線塗りにおける斜線と境界との交点を
\Landl
で求めています。)
そこで \LandLweight で,座標成分を weight倍することで,
防ぐ工夫もしています。その部分に問題点がありましたので
http://emath.s40.xrea.com/temp/Ph236sty.lzh
に改定版を置きました。
> ・開いた領域に斜線を引く方法
この場合ですと
\XMAX : 横軸の右端
\RT : 座標平面右上
\YMAX : 縦軸上端
を用いると良いでしょう。
> ・yasen<[..]{...}>では斜線がかぶってしまう
これは \colorbox{white}{...} で対処できます。
> ・\captionを書くとエラーになる
\caption は figure環境などフロートの中でのみ使用可能です。
(LaTeX の仕様)
下では,emathCap.sty で定義してある \fgcaption を用います。
以上の点を修正したリストを,下 re3635b.tex とします。
% --- re3635a.tex --------------------
\documentclass{jarticle}
\newdimen\mydimen
\begin{document}
\mydimen=0.00294pt
\mydimen=0.02718\mydimen
\the\mydimen
\end{document}
% --- re3635a.tex --------------------
\documentclass[a4j]{jarticle}
\usepackage{emathP}
\usepackage{emathCap}
\begin{document}
\begin{center}
\begin{zahyou}[ul=900mm,yokozikukigou=$x_1$,tatezikukigou=$x_2$]%
(-.01,.085)(-.01,.06)%
\LandLweight{100}% LandL などで交点を求める際,桁落ちを防止するため,各座標を100倍して計算
\tenretu*{A(.05,0);B(0,.02);%
Q(0,.0285714);R(0.00294118,.0235294);S(.025,.0125);T(.0666667,0);U(.082,0);V(.082,.057)}
\Nuritubusi*<syanuriKankaku=5pt>{\YMAX\Q\R\S\T\XMAX\RT}
\thicklines
\Drawline{\YMAX\Q\R\S\T\XMAX}
\thinlines
\Put\A[sw]{$0.05$}
\Put\B[sw]{$0.02$}
\tyokusen{20}{40}{-1}{}{}% samplep.pdf p.149
\fboxsep=1.2pt\relax
\Put{(.019,.017)}{\colorbox{white}{$20x_1+40x_2=1$}}
\tyokusen{15}{50}{-1}{}{}
\Put{(.05,0.007)}{\colorbox{white}{$15x_1+50x_2=1$}}
\tyokusen{60}{35}{-1}{}{}
\Put[background=white]{(-0.5,4)}{$60x_1+35x_2=1$}
\Put{(0.002,.028)}{\colorbox{white}{$60x_1+35x_2=1$}}
{\allinethickness{0.5pt}%
\def\sensyu{\hasen}
\tyokusen{340}{340}{-9}{}{}%
}
\Put{(.036,-0.008)}{\colorbox{white}{$z_*=x_1+x_2$}}
\Put\R[syaei=xy,xlabel=\frac1{340},ylabel=\frac2{85}]{}
\thicklines
\Put{(.05,.05)}{%
\yasen<[se]{\colorbox{white}{減少方向}}>(-.01,-.01)}
\thinlines
\end{zahyou}%
%% 本来,フロートでのみ使用される \caption を一般に使用するために修正したコマンド
\fgcaption{問題 $\mbox{P}'_1$ の実行可能領域と最小解}
\end{center}
\end{document}
▼関連発言
│
└◆3635:マニュアルの例でほしかったことなど [oga] 09/30 21:10
├◆3637:Re:マニュアルの例でほしかったことなど [田中徹] 10/01 05:15
└◆3638:Re:マニュアルの例でほしかったことなど [tDB] 10/01 16:28
├◆3639:Re[2]:(ありがとうございます)マニュアルの例でほしかったこ.. [oga] 10/02 21:15
└◆3646:Re[2]:tDBさんのソースを少しいじってみたら射影線が出ない.. [oga] 10/04 20:39
└◆3647:Re[3]:tDBさんのソースを少しいじってみたら射影線が出な.. [tDB] 10/04 21:23
└◆3648:Re[4]:ちゃんと出ました--tDBさんのソースを少しいじっ.. [oga] 10/04 22:00<-last