投稿

ブログの説明

学校に通わないで学んだことを記しています。間違っているところが何かありましたらご指摘下さると幸いです。コメントに対する返信が遅れる可能性があります。その場合は申し訳ありません。

このブログではサイドバーに広告を表示しています。このブログ内の投稿記事を検索するには右上の拡大鏡のアイコンを、アーカイブやラベル付けから投稿記事を閲覧するには左上の三重線のアイコンをクリックして下さい。

数式の表示にはMathJaxを利用させていただいています。数式の表示のためにJavaScriptが有効である必要があります。そうでない場合、訳の分からないLatexのコードが表示されます。幾何学図形やチャートの表示にはHTML5 CanvasやGoogle Chartを使用しています。その表示のためにもJavaScriptが有効である必要があります。

Debian 13にMetaTrader 5をインストールしてみた

インストール対象 Debian GNU/Linux 13 Trixie 64ビット版 インストールするアプリ MetaTrader 5 FXトレーダー向けに最適化された取引プラットフォームの1つにMetaTraderという名のソフトウェアがある。 MetaTrader 5のWindows版は MetaQuotes からダウンロードして無料で利用できる。Linux OS版は用意されていないが、 Wine を利用するとWindows版のMetaTrader 5をLinux OSにインストールして使うことができるらしい。 DebianとUbuntuにはシェル・スクリプトでできた インストーラー が用意されている。 Debian向けのインストーラーを利用してMetaTrader 5をDebian 13にインストールしてみることにした。 このインストーラーを利用するにはDebianにwgetとsudoと Wine が予めインストールされている必要がある。そしてsudoの設定ファイル/etc/sudoersにはログイン中のユーザー権限の指定が例えば次のように記述されている必要がある。 ユーザー名 ALL=(ALL) ALL Debianの場合、次のコマンドを実行すればMetaTrader 5がインストールされる。 $ wget https://download.mql5.com/cdn/web/metaquotes.software.corp/mt5/mt5debian.sh ; chmod +x mt5debian.sh ; ./mt5debian.sh wgetでdownload.mql5.comというサイトからmt5debian.shというインストーラーをダウンロードし、chmodというコマンドを使ってそのインストーラー(シェル・スクリプト)のファイルに実行権を与え、そして実行する。 Ubuntuの場合にはdebianというところをすべてubuntuにすればいい。 $ wget https://download.mql5.com/cdn/web/metaquotes.software.corp/mt5/mt5ubuntu.sh ; chmod +x mt5ubuntu.sh ; ./mt5ubuntu.sh インストールの際には

Debian 13へのEPSON GT-S600のデバイスドライバーのインストールに失敗

Debian GNU/Linux 13 (Trixie)でEPSON GT-S600というスキャナーを動作させるには次のウェブ・ページからdebパッケージになったデバイス・ドライバーをダウンロードしてインストールする必要がある。 EPSONドライバーダウンロード そこの検索フォームに製品名としてGT-S600を入力し、OSとしてLinuxを選んで検索すると1件のヒットがある。その「ダウンロード』ボタンをクリックした後、ダウンロードする前に「エプソンのソフトウエア使用許諾契約」に同意する必要がある。 debパッケージの他にrpmパッケージとデバイス・ドライバーのソース・コードとインストール方法などが記されたPDFファイルも用意されている。アーキテクチャは32ビットと64ビットのどちらも選ぶことができる。 debパッケージとrpmパッケージとソース・コードはtar形式に書庫化された上でgzip形式で圧縮されている。そのため、拡張子がtar.gzとある。 tar.gzファイルを伸長(解凍)するにはLinux OSではtarコマンドを利用することができる。 $ tar -xzvf iscan-gt-s600-bundle-2.30.4.x64.deb.tar tarコマンドのオプションについて説明すると、-xは書庫からファイルを取り出すための--extractか--getを意味し、-zはgzip形式の圧縮ファイルを伸長するための--gzipか--gunzipか--ungzipを意味し、-vは処理されたファイルを詳細にリストするための--verboseを意味する。 圧縮された書庫ファイルが伸長されて中のファイルが取り出されるとそのファイル名からtar.gzを覗いた名前のディレクトリー(フォルダー)が出力される。そのディレクトリーの中にinstall.shというシェル・スクリプトのファイルがあるので、これを実行するとインストールが開始される。 $ su # ./install.sh しかし、Debian GNU/Linux 13 (trixie)では依存関係にあるlibsaneが見つからず、次のようなエラー・メッセージを吐いてインストールに失敗してしまった。 E: Unable to locate package libsane この問題の原因はどう

円周、円弧、扇の面積、円の面積、球体の表面積、球体の体積、円柱と円錐の体積

円周 あなたのブラウザはCanvas要素に対応していません。 \[ \begin{align*} C &:= 円周 \\ r &:= 円の半径 \\ \pi &:= 円周率 \\ \pi &= 3.141593... \\ C &= 2 \pi r \\ &= 2 \times 3.141593... \times r \end{align*} \] 円周 えんしゅう とは円の周りの長さのこと。英語では円周のことをcircumference(サーカムフレンス)と呼んでいる。-cum-に発音上の強勢がある。 円の 半径 はんけい は円の中心から周りまでの長さのこと。英語では円の半径のことをradius(レイディアス)と呼んでいる。 円の半径は円の直径の半分。半径をrとし、直径(diameter)をdとすると、\( r = \dfrac{d}{2} \)と表わすことができる。 円ではその半径がどこを測っても等しい。 円周率 えんしゅうりつ はギリシア文字の\( \Pi \)(ピ)の小文字である\( \pi \)を用いて表され、英語式にパイと呼ぶ慣わしがある。 円周率は数学定数と呼ばれている定まった数。ただしそれを10進法で表わすと3.141593...のように無限に続く可能性がある。円の直径(diameter)をdとし、円周をCとすると、円周率\( \pi = \dfrac{C}{d} \)と定義されている。 円周率は分数の形では表わすことができないことが分かっているために 無理数 むりすう として知られている。円周率は代数的な数として表わすことができないことが分かっているために 超越数 ちょうえつすう にも分類されている。 円弧 円弧 えんこ は円周の任意の部分、したがって円周の一部、言い換えれば円の断片を指す。閉じていない円周とも開いた円周とも見なすことができる。 単に 弧 こ と呼んだ場合には円の一部ではなく、任意の2点間を結ぶ曲線一般のことを指している。 英語では円弧も単なる弧もこのどちらもan arc(アーク)と呼ばれている。特に円弧を表す場合にはthe arc of a circleのように言うことができる。 あなたのブラウザはCanvas要素に対応していません。 円弧

角度とそれを測る単位系(度数法や弧度法等)を理解する

角度 平面上の角度は時計の針のようにモデル化することができる。つまり、1つの回転軸を共有する2本の半直線の回転量の差として表せる。 このウェブブラウザはHTML5 CanvasかJavaScriptに対応していません。 このウェブブラウザはHTML5 CanvasかJavaScriptに対応していません。 半直線は矢印の方向に無限に伸びる光線のようなイメージ。この2本の半直線は角度のアームと呼ばれることがある。 2本のアームの回転軸は頂点と呼ばれている。頂点はOやPやQなどの文字で表されることが多い。 角度それ自身は \( \theta \) スモールシータ や \( \varphi \) スモールファイ もしくは \( \alpha \) スモールアルファ や \( \beta \) スモールベータ といったギリシア文字で表されることが多い。スモールシータは数学でよく用いられており、スモールファイは工学でよく用いられる。 ちなみに、3次元の極座標系の1つである球面座標系では極角(緯度)がスモールシータで、方位角(経度)がスモールファイで表されていることが多い。 角度を記号によって表すには角を表す\( \angle ABC \)の前にmeasureのmを添えて\( m \angle ABC \)と記すことができる。 このウェブブラウザはHTML5 CanvasかJavaScriptに対応していません。 角度が度数法で0°から90°の範囲にあるとき、その角度は 鋭角 えいかく と呼ばれている。角度が度数法で90°から180°の範囲にあるとき、その角度は 鈍角 どんかく と呼ばれている。 下の図では青が鋭角、赤が鈍角。下の図では青い角と赤い角は互いに 補角 ほかく の関係にもある。 このウェブブラウザはHTML5 CanvasかJavaScriptに対応していません。 2つの角度の合計が180°のとき、それらの角度は互いに補角の関係にある。英語ではsupplementary anglesと呼ばれている。2つの角度の合計が90°であるとき、それらの角度は互いに 余角 よかく の関係にある。英語ではcomplementary anglesと呼ばれている。したがって上の図が補角(a supplementary angle)で下

JavaScriptで幾何学模様を描いてみた

14個とも全て同じコードによって描いた。たった1つのパラメーターの値を変えるだけで同じコードから様々な幾何学的模様が作図できた。これらはその一部の例。 Canvas not supported Canvas not supported Canvas not supported Canvas not supported Canvas not supported Canvas not supported Canvas not supported Canvas not supported Canvas not supported Canvas not supported Canvas not supported Canvas not supported Canvas not supported Canvas not supported なんで同一コードからこのように異なる模様が出来上がるのかは理解できない。ちょっと不思議。 幾何学模様を描く 1から360までの間の整数値を入力して描画ボタンを押してみてください: Canvas not supported

LibreOffice Basic ユーザーが定義するデータ型(構造体)

ユーザー定義のデータ型(構造体) この投稿ではLibreOfficeかApache OpenOfficeのマクロ言語であるBasicにおいてユーザー定義のデータ型を宣言する2種類の方法について記す。 ユーザー定義のデータ型はカスタム・データ型と呼ばれていることもある。それは型の違いに関わらず1つ以上の変数をまとめて1つのデータ型とし、そのデータ型に名前を付けたもの。その要素となる変数はメンバーと呼ばれている。 ユーザー定義のデータ型はC言語で言うところの構造体、Pascalで言うところのレコードによく似ている。Pythonの辞書にも似ているが、辞書はハッシュ・テーブルの一種であると解釈されるものかもしれない。 構造体やレコードとクラスとの違いは、構造体やレコードがデータ・プロパティだけを持ち、コード・プロパティを持たないこと。データ・プロパティとは単にプロパティと呼ばれていたりメンバー変数と呼ばれていたりするもの。コード・プロパティとはメソッドと呼ばれていたりメンバー函数と呼ばれていたりするもの。 LibreOffice BasicまたはApache OpenOffice Basicでは、ユーザー定義のデー型(構造体)を次のような2種類の方法で定義することができる。 Type宣言を用いる方法。 UNO(Universal Network Objects)を利用する方法。 Type宣言を用いて構造体を定義 モジュール内のサブルーチンの外にType宣言を記述することによって構造体を定義することができる。 Type宣言はサブルーチンの外側に置く必要があり、Typeというキーワードによって始まり、End Typeというキーワードによって終わる。 次の例では出版物の属性をひとまとまりにしたBooksという構造体を定義している。 REM ***** 構造体を定義 ***** 'VBA拡張 Option Compatible 'Typeを用いた構造体宣言 Type Books BookTitle As String Subtitle As String Author As String Translator As String Publisher As String PublicationDate As D

HTML5 Canvasで矢印を描いてみた(三角関数を利用)

この投稿ではHTML5 Canvasの2次元コンテキストのAPIを利用して矢印を描くJavaScriptのコードを書いてみた。 ここで描く図は次のようなもの。 このウェブブラウザはHTML5 CanvasかJavaScriptに対応していません。 たったこれだけ。にもかかわらずコードのほうはオブジェクト指向の体裁になるように汎用性を多少持たせてやや大げさに設計してみた。これを更に発展させれば低次元のベクトル空間を描けるものになるかもしれない。 HTMLのcanvas要素 矢印を描くためにHTML5 Canvasの2次元コンテキストのAPIを利用するので、HTML文書のbody要素内にcanvas要素を記述しておく必要があった。それは例えば次のようになる。 <canvas id="arrow" width="250" height="250"> このブラウザはHTML5 CanvasかJavaScritが有効ではありません。 </canvas> canvasタグのid属性にはこのcanvas要素を一意に特定するための名前を指定する。ここではarrowとした。 widthはキャンバスの幅。heightはキャンバスの高さ。 HTML5 Canvasが有効でないときにはcanvasタグに挟まれた部分の文字列が表示される。 JavaScriptのコード JavaScriptのコードはscriptタグで挟んだscript要素内に記述する。script要素はHTML文章のbody要素の後に置くことが望ましい。少なくともcanvas要素の後である必要がある。 </body> <script> // JavaScriptのコード </script> </html> そうでなければ、例えばcanvas.jsと名付けた別のファイルに保存し、HTML文書内から次のように呼び出すこともできる。 <script type="text/javascript" src="arrow.js"></script> 矢印オブジェクトを返すファクトリ函数 まず矢印オブジェク