gpt4 book ai didi

physics - 在科学环境中编程的实践?

转载 作者:行者123 更新时间:2023-12-03 04:59:00 29 4
gpt4 key购买 nike

关闭。这个问题需要更多 focused .它目前不接受答案。












想改进这个问题?更新问题,使其仅关注一个问题 editing this post .

4年前关闭。




Improve this question




背景

去年,我在一所大学的一个物理研究组实习。在这个组中,我们主要使用LabVIEW编写程序来控制我们的设置、进行数据采集和分析我们的数据。对于前两个目的,这工作得很好,但对于数据分析来说,这是一个真正的痛苦。最重要的是,每个人大多都是自学成才,所以写的代码通常很乱(难怪每个博士很快决定从头开始重写所有东西)。由于 IT 部门严格的软件和网络规定,版本控制是未知的,并且无法设置。

现在,事情的发展出乎意料地好,但是自然科学领域的人是如何进行软件开发的呢?

问题

一些具体的问题:

  • 您使用什么语言/环境来开发科学软件,尤其是数据分析?有哪些图书馆? (例如,你用什么来绘图?)
  • 是否有针对没有任何重要编程背景的人的培训?
  • 你有版本控制和错误跟踪之类的东西吗?
  • 您将如何尝试为编程创造一个体面的环境,而又不妨碍个别科学家(尤其是物理学家是固执的人!)

  • 到目前为止的答案摘要

    到目前为止的答案(或我对它们的解释):(2008-10-11)
  • 似乎使用最广泛的语言/包:
  • LabVIEW
  • Python
  • SciPy , NumPy , PyLab等(另见 Brandon 的下载和链接回复)
  • C/C++
  • MATLAB
  • 几乎所有受访者都使用版本控制;错误跟踪和其他过程不太常见。
  • 软件木工类(class)是向科学家教授编程和开发技术的好方法。
  • 如何改善事物?
  • 不要强制人们遵守严格的协议(protocol)。
  • 自己搭建环境,把好处展示给别人。帮助他们自己开始使用版本控制、错误跟踪等。
  • 查看其他人的代码会有所帮助,但请注意,并非每个人都可能会欣赏这一点。
  • 最佳答案

    您使用什么语言/环境来开发科学软件,尤其是。数据分析?有哪些图书馆? (例如,你用什么来绘图?)

    我曾经为 Enthought 工作,SciPy 的主要企业赞助商.我们与与 Enthought 签约进行定制软件开发的公司的科学家合作。 Python/SciPy 似乎对科学家来说是一个舒适的环境。如果您是没有软件背景的科学家,那么开始使用 C++ 或 Java 就没有那么令人生畏了。

    Enthought Python Distribution附带所有科学计算库,包括分析、绘图、3D 可视化等。

    是否有针对没有任何重要编程背景的人的培训?

    Enthought 提供 SciPy training SciPy 社区非常擅长回答邮件列表上的问题。

    你有版本控制、错误跟踪之类的东西吗?

    是的,是的(Subversion 和 Trac)。由于我们与科学家合作(通常远离他们),版本控制和错误跟踪是必不可少的。一些科学家需要一些指导才能内化版本控制的好处。

    您将如何尝试为编程创造一个体面的环境,而又不妨碍个别科学家(尤其是物理学家是固执的人!)

    确保他们熟悉工具链。这需要预先投资,但这会让他们不太愿意拒绝它,转而选择更熟悉的东西(Excel)。当工具失败时(他们会失败),确保他们有一个可以寻求帮助的地方——邮件列表、用户组、组织中的其他科学家和软件开发人员。越多的帮助让他们回到物理领域就越好。

    关于physics - 在科学环境中编程的实践?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38239/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com