Code Monkey home page Code Monkey logo

pyheatintegration's People

Contributors

tarao1006 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

pyheatintegration's Issues

熱交換器の結合可能条件を変更する

uuidが同じ流体かつ温度変化が連続であり、熱交換器が隣接している場合、結合可能としている。この条件に加えて、傾きが同じである必要があるため、追加する。

readthedocsのpythonバージョン修正

readthedocsのビルドでpython3.7が使用されているため、warningが生じ、APIが正しく表示されていない。 .readthedocs.yaml の中で testing を指定しているため、python3.9が使われるはずであるが、ログを見ると3.7が使用されている。

ドキュメントを拡充する

pythonをあまり使用したことがないユーザーでも使用できるようにドキュメントを拡充する。

  • 流体の設定方法
  • グラフの描画方法
  • Excelでグラフを書きたい場合の対処法
    • 直線のリストを最終的に渡しているが、それらを結合する必要がある。

外部流体が指定されていない場合にバリデーションを緩くする

PinchAnalyzerignore_maximumTrue とすることで、最小接近温度差の最大値のバリデーションを回避できるようにしている。

  • 引数に加えて、受け取る streams 内に外部流体がない場合は、デフォルトで ignore_maximumTrue とする。
  • 受け取る streams 内に外部流体がない場合でもバリデーションを行いたい場合は、引数で渡すようにする。

熱交換器の面積

流体の状態が StreamState.UNKNOWN の場合、熱交換器の面積を求める際に、エラーとするか無視するかを選択できるように変更する。

総括伝熱係数を設定可能にする

熱交換器のコスト計算には、総括伝熱係数が必要となる。総括伝熱係数は、流体の状態によって異なる値となる。プロセスデザインコンテストの課題が参考になる。

ただし、利用者が設定できるようにもしたいので、

  • デフォルトの総括伝熱係数を設定
  • 新たに状態と総括伝熱係数の値を設定できるインターフェースの作成

を行いたい。

まずは、デフォルトの総括伝熱係数を設定する。

readthedocsでhtml_logoが表示されない

ドキュメントに設定しているロゴが正しく表示されない。パスが ./_static/logo-120x120.png となるべきだが、 ./_static/./images/logo-120x120.png となっていることが原因。

splitted・タイポの訂正

  • split の過去分詞形は splitsplitted ではない。
  • separated とすべき箇所を separeted にtypoしている。

最小接近温度差の最大値

ignore_maximum を指定した場合、最小接近温度差の最大値のチェックを無視することができる。便宜的に最大値を math.inf としているが、この場合デタラメな値を設定した場合、うまく動作しない。そこで、便宜的な最大値を 与熱流体の最高温度 - 受熱流体の最低温度 に変更する。

listをIterableに変更する

色々な箇所で型を list としているが、Iterable で十分な箇所も多いので、変更できる箇所は変更を行う。

get_possible_minimum_temp_diff_rangeを外部から呼び出さないようにする

PinchAnalyzer のコンストラクタで get_possible_minimum_temp_diff_range を呼び出し、指定した最小接近温度差が指定可能範囲内であるかを検証している。

しかし、 PinchAnalyzer のコンストラクタを呼び出す前に get_possible_minimum_temp_diff_range を呼び出して、検証したのちにコンストラクタに正常な最小接近温度差を渡すこともできる。

一種類の方法のみで最小接近温度差を検証できるように変更する。

熱交換器のコスト計算を可能にする

対数平均温度差を用いて熱交換器コストを求める。向流と並流両方の場合のコストを求めるようにする。

計算式

伝熱面積

area

  • Q: 交換熱量
  • U: 総括伝熱係数
  • A: 伝熱面積
  • deltaT: 対数平均温度差

コスト計算

equation

Kは係数で、以下の表の値となる

K
熱交換器 1.0
リボイラー/反応器 2.0

最小接近温度差の可能値が負になり得る

  • get_possible_minimum_temp_diff_range の戻り値に負が含まれる場合がある。

max(minimum_minimum_approch_temp_diff, 0) とするように変更する。

  • maximum_minimum_approch_temp_diff が負となる場合、完全な熱交換は不可能である。しかし、外部流体を用意せずにTQ線図を描きたい要請に応える必要もある。

PinchAnalyzer のコンストラクタの引数に ignore_maximum を追加し、最大値のバリデーションを無視できるようにする。

独自エラーの作成

PyHeatIntegrationError を定義し、

except PyHeatIntegrationError

で例外を処理できるように変更する。

pypiで画像が表示されない

pypiのプロジェクトのトップページで、GitHubの絶対パスを指定しているのにも関わらず、画像が表示されません。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.