1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Ubuntu on IBM CloudにOctaveとdynareをインストール + 経済モデルシミュレーション

Posted at
環境
  • Windows 10 Home 64bit(接続元)
    • TigerVNCクライアント
      • 接続元-接続先間でVNC(ここではGUI)接続を実現
    • Teraterm
      • VNC接続の際にSSHポート転送機能を利用
  • Ubuntu 20.04 64bit(接続先)
    • TigerVNCサーバ
      • 接続元-接続先間でGUI接続を実現
    • Octave(Ver 5.2.0)
    • dynare(Ver 4.6.0)
      • 様々な経済モデルを処理するためのソフトウェアプラットフォーム
        https://www.dynare.org/
      • Octaveのアドインとして機能
      • 無料
手順
1. クラウドサーバ(Virtual Server for Classic)を注文
  • サイト
  • タイプ・スペック
    • 仮想サーバのタイプ:一時
    • ロケーション: TOK05 東京
    • プロファイル: 平衡型 | B1.2x4(vCPU 2 RAM 4GB SANストレージ 25GB)
    • OS: Ubuntu 20.04 LTS Focal Fossa Minimal Install(64bit)
    • パブリック・セキュリティー・グループ: allow_outbound
      • クラウドサーバに端を発したパブリックインターフェースを介した外部への通信(パブリックアウトバウンド)とその応答のみを許可
    • アップリンク・ポート速度: 100Mbps
2. SSL-VPN通信でプライベート側からサーバにsshなどで接続し、Octave・dynareなどをインストール
apt update -y
apt upgrade -y 
apt install octave dynare liboctave-dev x13as -y
3. 続けてGUI環境を導入すると共にVNC接続できるよう設定
apt install tasksel -y
tasksel install ubuntu-desktop
systemctl set-default graphical.target
reboot # 再起動後、サーバに再接続
apt install tigervnc-standalone-server -y # TigerVNCサーバをダウンロード
adduser vncuser
usermod -a -G sudo vncuser
su vncuser
vncpasswd # パスワードを入力後、以下のように出力されるのでnを入力
Would you like to enter a view-only password (y/n)? n
sudo vncserver -localhost no
sudo vncserver -list # 例えば以下のように出力される
X DISPLAY #     RFB PORT #      PROCESS ID
:1              5901            1917
4. クライアント側でSSHポート転送機能を有効化、また、VNC接続できるよう設定、その上でVNC接続を実行
  • Teratermをダウンロード(ない場合)
    • サイト
    • 設定(SSHポート転送を有効化)
      • 設定 > SSH転送 > 追加 とクリック
      • ローカルポート(49152 から 60999 までの間であれば不具合は少ない)、リモート側ホスト(クラウドサーバのプライベートIPアドレス)、ポートを下記のように設定
        image.png
      • 設定 > 設定の保存 とクリック(Teratermを再度立ち上げた際には、設定 > 設定の読み込み とクリックし、保存した設定ファイルを読み込む必要あり)
  • TigerVNCクライアントをダウンロード
    • サイト: vncviewer64-1.12.0.exe
    • 設定
      • ソフトを⽴ち上げ127.0.0.1:55901と⼊⼒(VNC通信を安全に⾏うために先ほど設定したSSHポート転送機能を利⽤。そのため、127.0.0.1(ループバックアドレス) + 55901ポートを指定)
        image.png
      • 設定したVNCパスワードを⼊⼒
        image.png
        image.png
        image.png
      • 接続完了
        image.png
      • すぐに画⾯の⾃動ロックを無効化(※ロックが発動してしまうと、解除のため正しいパスワードを打ち込んでも、なぜかパスワードエラーとなりログイン不能--調査中--)
        image.png
        image.png
5. terminalを起動させてviなどで今回実⾏する実物的景気循環モデル(Real Business Cycle Model)のファイルを作成

image.png
image.png

コード
rbc.mod
var c k y A; // 消費、資本、生産量(=需要量)、技術的ショック
varexo e; // ホワイトノイズ
parameters alpha beta delta rho sdG;
alpha=0.37; // 資本の弾力性
beta=0.98; // 主観割引率
delta=0.06/4; // 資本減耗率
rho=0.8; // ショックの持続性
sdG = 0.25; // ショック値

model;
1/exp(c) = beta*(1 - delta + alpha*exp(A(+1))*exp(k)^(alpha-1))*1/exp(c(+1));
exp(y) = exp(c) + exp(k) - (1 - delta)*exp(k(-1));
exp(y) = exp(A)*exp(k(-1))^(alpha);
A = rho*A(-1) + e;
end;

check;

shocks;
var e = sdG^2;
end;

stoch_simul(periods=350);
6 terminalからOctaveを起動(octave --gui)

image.png

7 OctaveのCommand Windowでdynareを実⾏(dynare rbc.mod)

image.png

実行結果

image.png

8 VNC接続を終了(vncserver -kill :1、1はX DISPLAY番号、vncserver -listで確認可)

image.png

参考

Ubuntu 20.04にVNCサーバーをインストールする⽅法
https://tutorialcrawler.com/ubuntu-debian/ubuntu-20-04%E3%81%ABvnc%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/

VNC 利⽤⼿順まとめ
https://qiita.com/ryo-sato/items/7cf2da401dd13dd4f36d

リアルビジネスサイクル理論
https://ja.wikipedia.org/wiki/%E3%83%AA%E3%82%A2%E3%83%AB%E3%83%93%E3%82%B8%E3%83%8D%E3%82%B9%E3%82%B5%E3%82%A4%E3%82%AF%E3%83%AB%E7%90%86%E8%AB%96

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?