• ベストアンサー

蒸留塔のシミュレータ

始めまして。dakachoと申します。 いま、蒸留塔のシミュレータをC言語で作成することに挑戦しています。 自分なりに考えて、シーレ・ゲデス法を用い、蒸留計算をして、還流比や原料供給量を入力した時の各段の成分組成、温度分布を算出するまではなんとか作成しました。 しかしこのプログラムだと一回入力した値に対して一つの計算結果は得られますが、実際の蒸留塔のような時系列のデータ(実際の蒸留塔は時間に伴って成分組成や温度分布が刻々と変化するような気がするのですが…)が得られません。というか時間変数自体が入っていません。 このプログラムをシミュレーターとして用い、実際の蒸留塔を運転させたような時系列のデータをえるにはこれからどういう風に作っていけば良いのかわかりません。 そこで質問なのですが、そもそも、「蒸留塔のシミュレータ」を作成する方向性として「シーレゲデス法を用いた蒸留計算のプログラムを作成する」という方向で良いのでしょうか?また時系列のデータ(例えば 時間t=T1,T2,T3…[s]のそれぞれの時の成分組成、等。)はどのようにしたら得られるのでしょうか? ちなみに、私が作成したプログラムの内容は、「大江修三著 蒸留工学」の「多成分系の段数計算(シーレゲデス法)」(41~50ページ)の内容をそのままC言語でプログラミングしたような感じです。 蒸留工学初心者のため、見当違いな質問でしたら申し訳ありません。 よろしくお願い致します。

  • 化学
  • 回答数2
  • ありがとう数5

質問者が選んだベストアンサー

  • ベストアンサー
  • kenball
  • ベストアンサー率50% (1/2)
回答No.2

こんにちは、dakachoさん! 学生に頃から、真剣に化学工学に携わっていると色々と良いことがあると思います。 私も15年前に真面目にやっていれば・・と思うことも度々! 大江先生の本は私も15年前からのバイブルでした。 基本に戻りたいときは時々みます。今ではほとんどみませんが。 私は石油会社の製油所で生産技術の仕事をしていました。今は違いますが。 現実的なシミュレーターの存在意味を知ったほうがいいと思います。 基本的には定常状態のモデルを作り出すために使用することが多いのです。 ですから、経時的な変化は必要ありません(時系列の要素はあまり必要ありません)。 ですから、経時的要素(時間に関する変数)が入っていないと推定されますし、必要ありません。 恐らく時間的要素も入れようと思えば入れられるのでしょうが、現実問題必要ないでしょう。 必要ないから時間的要素入れないというのは理屈ではありませんが、必要ありません。 実際の現場の蒸留塔の運転では ○経時的に色々な条件が変化することを避けるのが普通です(能動的)。←制御が出来ないし、運転出来ません(笑) ○経時的に色々な条件が変わることをしません(能動的)。←タワーの運転に一苦労(笑)  10日に一度など、フィード性情やプロダクト性情を変えるために運転条件を変更することはあります。 ですから、ある条件下での結果がほしくて、シミュレーターを走らせることが多いです。 例えば、必要に迫られ、 (1)原料の組成を変えなければいけない (2)熱源が足りなくなった(リボイラーやFeed熱交換器) (3)さらに、製品のスペックが変わり、プロダクトの蒸留性情を変えたい! (4)タワーの初期性能と現状の性能を比較したい!製造メーカー(ベンダー)にクレームつけたい!(笑) 製品性情(タワーからの流出物)が基本の第一になりますが、 これらの条件を満たすことが現状のタワー(蒸留塔)で満足できることが出来るかを 計算上でもみるためにシミュレーターが使用されることが多いと言えます。 また、当然のこと新たな蒸留塔建設のための設計にも役に立ちます。 また、省エネ運転を考慮したりすることもあります。 また、シーレゲデス法やその他の方法については良くわかりません。 というのは個々のFeed性情や圧力、温度で適切な方法が使われるはずです。 物性によることが多いと思います。 私も学生の頃は良くわかりませんでしたが、実際にどのようにシミュレーターが使われることを理解すれば、 どのようなシミュレーターが必要なのかを理解出来るようになると思います。先生に聞いてみて! 以上

dakacho
質問者

お礼

とても詳しく説明して頂いてありがとうございました。 実際のシミュレーターの用途や経時的な要素があまり問題ではないことなど、あまり参考書には載っていないので全くわかりませんでした。 ですが実際に現場におられた方の回答を聞くことができ、とても勉強になりました! これで卒業研究が少し進みそうです 本当にありがとうございました。

dakacho
質問者

補足

kenballさん始めまして。よろしくお願い致します! 実際のシミュレーターの用途や、「定常状態」が問題になるので、経時的なところは問題にならない、そもそも入出力が変化するような状態を考えないという所の説明が良く分りました。 なぜ時系列の要素が必要ではないのかと思ったのかというと、私の今やろうとしているテーマ(実は大学の卒業研究のテーマなんです)が「蒸留塔の異常診断」というもので、シミュレーターから取ったデータを実際の蒸留塔のデータの代わりに診断の対象として用いようと思っています。それで、テーマが「異常診断」なので「異常な状態」もシミュレートしたいのです。ですので、「入力値」や「蒸留塔内の液流量などの条件」が異常により変化したら…という場合も考慮に入れる必要があります。それで、その異常が起こった時の変化が分るようなグラフ、例えば横軸に「時間」縦軸に「留出量」等のグラフを求めようとしたとき、横軸を「時間」にしたいので経時的な要素が必要ではないかと思ったんです。 ですがそもそも異常が起こったとしても異常なりの「定常状態」に落ち着くのだし、結局は時系列は考えなくても良いということなのかなと思いました。 それで、もし横軸が「時間」のグラフが欲しいのなら、サンプル時間ごとに「入力値や蒸留塔内の係数」(異常が起こった時は異常な入力値や異常な蒸留塔内の係数)、を逐次用意してその都度出力結果を求め、最後にその結果を結んでグラフにすれば良いのかなぁと思ったのですが…自信はありません。 変な文章になってすいません。

その他の回答 (1)

  • gorousi
  • ベストアンサー率36% (4/11)
回答No.1

はじめまして。gorousiです。 gorousiは昔大江先生の研究室にいました。 まじめではなかったので内容はすっかり忘れました。 蒸留の計算では、通常ある気圧・温度で平衡に達しているというのが条件のため、(平衡に達しさえすれば目的の組成が得られるから)理論段数などを計算する場合途中の時間などは考慮していないのだと思います。 厳密に言えば何度・何時間で平衡に達すると言うのは計算できると思うのですが、まず十分な平衡に達することが必要であるから途中経過で組成がどうであっても対して関係なかったと思います。 (あくまで、理論的な式の上では。実際のプラントでは重要だと思います) dakachoさんは、大江先生の授業を受けている方でしょうか?だとしたら、先生に聞けば一番よく教えてくれると思います。(って出来るならそうしてますよね・・ごめんなさい) そうでなかったとしたら、メールで質問してみるのはどうでしょう?すでにご存知かもしれませんが先生のサイトがあります。 あまりお役に立てず申し訳ありません。

参考URL:
http://www.s-ohe.com/index.htm
dakacho
質問者

お礼

gorousiさん、回答どうもありがとうございました。 大江先生の授業を受けておられた方という事で驚きました!! 私は大江先生の授業は受けていませんし、大学も別の所です。。今は大学の卒業研究で蒸留塔の事を勉強していて(まだ全然理解できていませんが)、「蒸留工学」の本はおそらく一番参考にしています。 なるほど…途中経過は考慮せずに平衡状態になった時だけを考えればいいんですか…ということはプラントを動かしていて、もし入力値(原料供給量とか全圧とか)が時間と共に微妙に変化する場合、その都度その入力値で計算させて、逐次、結果を求めればいいという事になるのでしょうか。それなら一応このプログラムでもいいのかなあと思いました。 あと大江先生のHPも教えていただいてありがとうございます。メールで直に質問…かなり緊張します… お礼の書きこみが遅くなり申し訳ありませんでした。 とても参考になりました。本当にありがとうございました。

関連するQ&A

  • 蒸留塔・・・

    蒸留塔の計算で… 蒸留塔でEB,PX,OXの混合液をFEEDして、BTM(缶出)からOXを製品として抜き出し、それ以外の低沸点物は、TOP→コンデンサ→還流槽→還流とDIST(留出)として抜き出しています。 そこで、FEEDのOX含有組成が47.5%で留出OX含有組成3%で、BTM OX(製品)を99.6%で抜き出したい場合の留出量を知りたいとき          BTM OX組成(99.6%)-FEED OX組成(47.5%) FEED(流量)*――----------------------------------------           BTM OX組成(99.6%)-留出 OX組成(3%) の式で計算して調べる事が出来ると言うことでした。すいませんがこの式をどなたか解かりやすく、解説していただけませんか。お願いします。 また、違う式で計算できる様ならそちらもぜひ教えてください。 #補足、FEED、缶出・留出量は一定で還流量は還流槽のレベルでコントロール 、缶出の流量は、蒸留塔の液面コントロールで若干変化するにので、 計算式に含まずにお願いします

  • 蒸留の各段からの液・蒸気量

    蒸留の各段からの液・蒸気量 蒸留塔の段数計算を行う際、「塔内の各段からの蒸気および液のモル流量は濃縮部、回収部でそれぞれ不変である」という仮定があり、この仮定が成立する条件として下記の説明文がありました。 1)各成分のモル蒸発潜熱が等しい。モル潜熱が等しければ凝縮する高沸成分と等しいモル数の低沸成分が蒸発することになる。 この説明の解説をよろしくお願い致します。

  • ハノイの塔について課題が出たのですが、言ってる意味自体解りません(Tへ

    ハノイの塔について課題が出たのですが、言ってる意味自体解りません(TへT) 課題内容は以下のものなんですがぁ;;助けてくださぁ~い↓↓ (1)ハノイの塔の時間計算量が 2n - 1 になるのはなぜか. また,1 枚の円盤を移すのに 2 秒かかるとする. ハノイの塔で,30 枚の円盤を移すのに約何年かかるか求めよ. ただし,1 年を 365 日とする. (2)8 Queen で,しらみつぶし法によってあらゆる置き方を確認するのに何回かかるか求めよ. また,8 Queen で,一行には一つの Queen しか置けないことを考慮した場合のあらゆる置き方を確認するのに何回かかるか求めよ. いずれも,Queen を一個ずつ確認するのではなく,8 個の Queen の置き方一通りについて一回の確認とみなす. 求めた過程も説明すること.

  • 確率分布の質問

    確率分布で簡単な問題なのかどうかもわかりませんが、 一様分布を(0-1)でエクセルで10000セルくらい表示させて 時系列データのモデルとします。 この一様分布のヒストグラムは、四角形です。 セル1行差(x[1]-x[2])の差分を計算して10000セルくらい表示 させると、この分布は(-1,1)の三角形になります。 なぜ、三角分布に変換されるのか教えてください。

  • "制御"に関して

    ※制御工学の質問なんですが、ないので物理で失礼します。 気軽に受けた仕事(論文に基づくプログラム実装)なんですが、"制御系"の知識が不可欠であることが判明。 "制御工学"、"ラプラス変換"に関して色々読み齧ってみたものの、 どうにもそうした教科書的な知識だけでは実装に結びつきません。 中でも悩んでいるのが、以下の二点です。 1)実測時系列データの空間   伝達関数"S"は論文中所与で、教科書通り、複素変数sの有理式で表わされています。   独立変数、従属変数ともに"t"ではなく、"s"空間であることは明らか(だと思います)。   そこで、実測時系列データを"s"の関数にするためラプラス変換(正確にはZ変換)し、   伝達関数"S"を掛けた後、逆ラプラス変換し直すべきと考えました。   ラプラス変換とフーリエ変換の類似性から、   ラプラス変換の数値的解法を適用すれば済むと、、。   しかし、、     ・時系列データ全体をラプラス変換(Z変換)すべきか?     ・"制御"というのはそもそもリアルタイム制御可能であるべきで、      エンドレスにデータが来るかもしれないから時系列データ全体はありえない。     ・では、どうやって時間範囲を区切って変換すべきか?     ・いや、それとも時系列データ全体をラプラス変換すること自体間違っている?   と堂々巡り。 2)"フィードバック"の実装法   教科書どおりの逆戻りの矢印が書いてあり、何となく分かった気になっていたのですが、   実際にプログラムに落とすとなると、     ・1ステップ前(i.e.,Δt前)のOutを今回の入力にするような漸化式   ではなさそうなのです。   どうするのが常道なのでしょう? どなたか、お知恵を貸してください。

  • ハノイの塔の計算時間についての質問です。

    ハノイの塔の時間計算量が 2n - 1 になるのはなぜかを表したいのですが、どう説明したら解りやすいですか? T(n) = (n段を解く手数) と書くことにすれば T(n) = 2T(n-1) + 1 1. T(n) + 1 = 2{T(n-1) + 1} と変形できること 2. つまり, (1段のときの手数) + 1から順に2倍,2倍,2倍,…されていること 3. そのような規則に従うと, T(n)+1 = (T(1)+1)*2^(n-1) と表せること 4. T(1)=(1段のときの手数)=1 だから T(n)+1=2*2^(n-1) = 2^n 5. 結局, T(n) = 2^n - 1 というのが見つかったのですが、 なぜ1.で+1をするのか。等々わからないことだらけです T(n)を求める時のテクニックでしょうか?

  • ◆蒸留(沸点・凝縮点)について◆

    【1】なぜ複数の物質の混合液は、沸騰する温度と凝縮する温度が異なるのでしょうか。 その2点に差があるから蒸留ができるという基本的な話だと思いますすが、そもそもなぜなんでしょう。 理想的な2成分系で、沸騰曲線(液相線)の温度を越えると混合液は沸騰を始め、逆に凝縮曲線(気相線)より温度が下がると蒸気は凝縮を始めるとのことですが、この状態がいまいち分かりません。 例えばある濃度の2成分混合液(1)が60℃で沸騰したとして、その蒸気(1)の温度は60℃ですよね? その後蒸気が別の場所で冷却されて沸点液(2)になったとして、それは例えば55℃とかの、混合液(1)より低い沸点で、かつ濃度の高い液になるということですよね? その液(2)はまた再加熱で55℃の蒸気(2)を発するんですよね? これを繰り返して濃縮されていくと思っていますが、まずここまで合ってますでしょうか?【2】 【3】また、この物質の場合、例えば風船にこの原液を入れて、60℃まで加熱した後、さらに加熱を続けると仮に蒸気(1)の凝縮点が65℃だとしたら、65℃までの間風船の中の状態は、例えば63℃で温度維持していたとすると、63℃の液と蒸気がいるんですかね? 65℃になるまで加熱したらやっと全部気体にはなってるんでしょうけれど。 【4】その時63℃の液は(1)と組成が変わってますよね? 【5】でも全部気体になってしまえば組成はまた(1)と同じになりますよね? 【6】沸点の定義は「その液体の蒸気圧が外気(大気)圧と等しくなる時の温度」ということですが、では「凝縮点」の定義は何でしょうか?検索しても「凝縮点」の定義を端的に説明した所はありませんでした。 わかりにくい文書で申し訳ないですが、取敢えず質問箇所を【1】~【6】に分けてみました。 どなたか、分かりやすく解説をお願いします。

  • 蒸留塔を使わない蒸留

    蒸留塔を使わない蒸留(単蒸留のように)では減圧度と温度が決まれば、フラスコでもプラントでもほぼ近い組成の留分が得られるのでしょうか?

  • 蒸留塔について

    蒸留塔における理論段数Nは小さいほど 装置の性能が良いとのことですが 還流比Rを大きくすると理論段数はどう変化して 装置の性能はよくなるのでしょうか?悪くなるのでしょうか? 大学の学生実験で、還流比を大きくすると 理論段数は小さくなるという結果が得られたので 還流比が大きいほど分離の性能がよくなるのだと思ったのですが・・・ H.E.T.P(height equivalent to a theoretical plate)を考えると、 理論段数が小さいほどH.E.T.Pの値は大きくなりますよね? H.E.T.Pの値が大きいと装置の性能が悪くなるのだと思ったのですが それでは先ほどの予想と矛盾しているように思えるのですが・・・。 還流比と装置の性能の関係について教えていただきたいと思っております。 また、間違っているところがありましたら指摘していただけると幸いです。 よろしくお願いいたします。

  • 正規乱数から生成される時系列の自己相関について

    平均0、分散0.004の正規乱数を使って時系列を作ります。 イメージとしては株価収益の時系列なんかが当てはまります。 その時系列の自己相関を計測してみました。ラグは1です。 例えば(t,t+1,t+2,t+3,t+4)と、(t+1,t+2,t+3,t+4,t+5)の自己相関などなど。 そうすると、自己相関の計測期間を短くするほど平均がマイナスによる傾向があるのですが、 これには何か理由があるのでしょうか? 正規分布からの乱数ということで、イメージ的には、 同じ方向へ行くも、逆転するも確率的には一緒なのかなという感じなのですが。