一套评估结构和岩土工程问题的标准模型
sfsimodels的Python项目详细描述
…图片::https://travis-ci.org/eng-tools/sfsimodels.svg?branch=master
:目标:https://travis ci.org/eng tools/sfsimodels
:alt:测试状态
…图片::https://img.shields.io/pypi/v/sfsimodels.svg
:目标:https://pypi.python.org/pypi/sfsimodels
:alt:pypi version
图片::https://coveralls.io/repos/github/eng tools/sfsimodels/badge.svg
:目标:https://coveralls.io/github/eng tools/sfsimodels
…图片::https://img.shields.io/badge/license mit blue.svg
:目标:https://github.com/eng tools/sfsimodels/blob/master/license
:alt:license
图片::https://zenodo.org/badge/doi/10.5281/zenodo.2596721.svg
:目标:https://doi.org/10.5281/zenodo.2596721
****sfsimodels
*br/>
致力于解决结构和岩土工程领域中结合独立开发的源代码的"liskov替换原则"问题。s,当前不能表示动态/更改状态。
e`是标准操作(如保存和加载)应被视为的类。
-`祖先类型'是类的祖先的"类型"列表
>生成新的自定义模型
通过从"sm.custom object"继承,因为它包含加载和保存模型所需的默认参数
。
==============
将字典传递给"sm.load_json"函数中的"custom_object"参数,字典中包含:
"custom={"<;base_type>;-<;type>;":object}"。
代码::bash
dels/,doi:10.5281/zenodo.2596721
saving and loading models
=====
查看一整套示例[在github上](https://github.com/eng tools/sfsimodels/blob/master/examples/saving_and懔loading懔objects.ipynb)
代码块::python
structure=models.structure();创建一个structure对象re.mass_eff=80000。
structure.mass_ratio=1.0设置垂直和水平质量相等
ecp_output=files.output();创建输出对象
ecp_output.add_to_dict(structure)将结构添加到输出对象
ecp_output.name="test data"
ecp_output.units="n,kg,m,s"设置单位
ecp_output.comments=""
p_str=json.dumps(ecp_output.to_dict(),skipkeys=["u repr_uu"],indent=4)将其分配给json字符串
objs=files.loads_json(p_u str)加载json字符串并转换为obje字典cts
断言ct.isclose(structure.mass_eff,objs['buildings'][1].mass_eff)访问对象
如何设置?[谚]=====
1。运行``pip install-r requirements.txt`
测试
==
测试使用pytest
*本地运行:``pytest``在命令行上运行。
*测试使用travis在每次推送时运行,请参见``.travis.yml``文件
部署
==
把包裹寄到pypi.com,你需要:
1。推到*pypi*分支。这将在circleci.com上执行测试。创建git标记并推送到github,运行:``trigger_deploy.py``或手动:
…代码::bash
git tag 0.5.2-m"version 0.5.2"
git push——tags origin pypi
contribution
==
*所有需要外部参数的属性都应命名为"get\lt;property>;`,
*随土壤剖面深度变化的参数应命名为命名为"get-property>;"u at-u depth`
*应力相关土壤中的属性应使用"get-property>;"u at-u-v-eff-stress`获得属性
*设置对象属性的函数应以"set"开头,然后属性引用,即"set-lt;property>;"hor year>;`
*在对象上生成属性的方法的前缀应该是'g en廑,然后是属性,即'gen廑lt;property`e.g.'soil廑u profile.gen廑split()`
http://sfsimodels.readthedocs.io/en/latest/
==========
:目标:https://travis ci.org/eng tools/sfsimodels
:alt:测试状态
…图片::https://img.shields.io/pypi/v/sfsimodels.svg
:目标:https://pypi.python.org/pypi/sfsimodels
:alt:pypi version
图片::https://coveralls.io/repos/github/eng tools/sfsimodels/badge.svg
:目标:https://coveralls.io/github/eng tools/sfsimodels
…图片::https://img.shields.io/badge/license mit blue.svg
:目标:https://github.com/eng tools/sfsimodels/blob/master/license
:alt:license
图片::https://zenodo.org/badge/doi/10.5281/zenodo.2596721.svg
:目标:https://doi.org/10.5281/zenodo.2596721
****sfsimodels
*br/>
致力于解决结构和岩土工程领域中结合独立开发的源代码的"liskov替换原则"问题。s,当前不能表示动态/更改状态。
e`是标准操作(如保存和加载)应被视为的类。
-`祖先类型'是类的祖先的"类型"列表
>生成新的自定义模型
通过从"sm.custom object"继承,因为它包含加载和保存模型所需的默认参数
。
==============
将字典传递给"sm.load_json"函数中的"custom_object"参数,字典中包含:
"custom={"<;base_type>;-<;type>;":object}"。
代码::bash
dels/,doi:10.5281/zenodo.2596721
saving and loading models
=====
查看一整套示例[在github上](https://github.com/eng tools/sfsimodels/blob/master/examples/saving_and懔loading懔objects.ipynb)
代码块::python
structure=models.structure();创建一个structure对象re.mass_eff=80000。
structure.mass_ratio=1.0设置垂直和水平质量相等
ecp_output=files.output();创建输出对象
ecp_output.add_to_dict(structure)将结构添加到输出对象
ecp_output.name="test data"
ecp_output.units="n,kg,m,s"设置单位
ecp_output.comments=""
p_str=json.dumps(ecp_output.to_dict(),skipkeys=["u repr_uu"],indent=4)将其分配给json字符串
objs=files.loads_json(p_u str)加载json字符串并转换为obje字典cts
断言ct.isclose(structure.mass_eff,objs['buildings'][1].mass_eff)访问对象
如何设置?[谚]=====
1。运行``pip install-r requirements.txt`
测试
==
测试使用pytest
*本地运行:``pytest``在命令行上运行。
*测试使用travis在每次推送时运行,请参见``.travis.yml``文件
部署
==
把包裹寄到pypi.com,你需要:
1。推到*pypi*分支。这将在circleci.com上执行测试。创建git标记并推送到github,运行:``trigger_deploy.py``或手动:
…代码::bash
git tag 0.5.2-m"version 0.5.2"
git push——tags origin pypi
contribution
==
*所有需要外部参数的属性都应命名为"get\lt;property>;`,
*随土壤剖面深度变化的参数应命名为命名为"get-property>;"u at-u depth`
*应力相关土壤中的属性应使用"get-property>;"u at-u-v-eff-stress`获得属性
*设置对象属性的函数应以"set"开头,然后属性引用,即"set-lt;property>;"hor year>;`
*在对象上生成属性的方法的前缀应该是'g en廑,然后是属性,即'gen廑lt;property`e.g.'soil廑u profile.gen廑split()`
http://sfsimodels.readthedocs.io/en/latest/
==========