小编Tim*_*Lin的帖子

DVCS如何帮助科学编程?

我正在做一些初步的工作,研究DVCS(像Git,Hg,Bazar这样的人)如何在科学编程过程中提供帮助,尤其是研究生.我认为自从我编程了几年以来,我已经处于相当有利的位置,目前正在开始自然科学硕士课程.目标是在一两个月内对此进行简短介绍.

据我所知,除了源控制的明显优势外,DVCS目前还为研究生的日常生活提供了以下改进:

  1. 分枝:

    这是一个很大的问题.从观察DVCS实践可以看出,廉价分支主要是鼓励对新功能进行实验.科学编程完全是关于实验的.可以创建不同的分支来调整参数或算法.这一点尤其重要,因为大多数科学代码在他们的一生中都没有看到过一次重构(大多数研究生甚至都不知道它是什么),所以去不同分支的能力会给典型的疯狂带来一些方法.快速提交也可能意味着使用提交注释作为实验室笔记本的替代品.计算结果可以标记为特定的提交哈希码,以进行可重复的研究.

  2. 推送到服务器:

    由于现在大多数科学代码都运行在某种集群上,因此DVCS可以用作某种更高级的Rsync,许多人已经将其用于将"生产"代码推送到HPC集群.这与分支相结合,可轻松运行多个版本的代码而无需离开

  3. 论文合作:

    需要我多说?具有多个作者的论文与小型开源项目完全相同.当作者都在LaTex中写作时,论文上的协作应该是一个自然的选择,如果用Word之类的东西完成写作会带来额外的复杂性.这是提交评论可能发挥更大作用的地方.

我的问题是,您认为DVCS可以为科学程序员做出什么贡献?我看到很多关于转向社区源代码控制的讨论,但大多数人仍在研究Subversion.从我粗略的笔记来看,听起来DVCS应该是新毕业生的完美工作流程范例.我的想法有缺陷吗?或者科学编码是否仅仅落后于甚至听说过 DVCS工具?


有关:

git dvcs scientific-computing

12
推荐指数
1
解决办法
1964
查看次数

通过子元素对齐两个DIV

我目前正试图找出一种用CSS来布局语义定义的多图像图形的方法,每个图像可能都有自己的子图像.这种图形的语义是<figure>包含多个<figure class=subfigure>div 的外部div .每个.subfigurediv都包含一个<img>后跟a <figcaption class=subfigcaption>.

这是一个关于JSFiddle最小工作示例

目标: 我正在尝试实现一种在印刷媒体中常见的布局 ; 每个.subfigure都由其独特元素的基线垂直对齐<img>,而它自己.subfigcaption可以在需要的时候运行,而不会影响<img>每个子图中的相对位置.

但是,使用我当前的布局代码,我只能将每个.subfigure作为一个整体相对对齐:<img>并将.subfigcaption其视为聚合块.结果是,在我的工作示例中可以看出,长子标题可能破坏子图之间的图像对齐.

我真的很想找到一个CSS解决方案,它不需要我改变语义相关的HTML.我考虑过使用表格布局格式,但是我没有看到如何正确地放置表格行,因为我的html目前已经组织好了.此外,此样式将应用于大量内容,因此我无法手动调整每个特定的数字.


注意:做的figure>figure {vertical-align: top;}看起来不错的这个例子,但不是我要找的.目标是模仿打印惯例,我们在图像的底部对齐,而不是顶部.实际上,.subfigcaptions无论图像的相对大小如何,更准确的目标是将所有开始都放在共同的基线上.


目前的布局

期望的布局

html css css3

6
推荐指数
2
解决办法
346
查看次数

将Git SHA1信息扩展为签入而不归档?

有没有办法在每次提交时在文件中包含git commit哈希?我只能在归档期间找到如何执行此操作,但我无法找到如何为每次提交执行此操作.

我正在使用git作为修订控件进行科学编程,因此这种功能对于重现性原因非常有用(即,git hash会自动包含在所有结果文件和数字中).

git hash scientific-computing

5
推荐指数
1
解决办法
1124
查看次数

有没有办法检查函数输出是否分配给Python中的变量?

在Python中,我想编写一个函数,如果自己调用它会将其结果漂亮地打印到控制台(主要用于交互式或调试).出于这个问题的目的,让我们说它检查某事物的状态.如果我打电话

check_status()
Run Code Online (Sandbox Code Playgroud)

我希望看到类似的东西:

Pretty printer status check 0.02v
NOTE: This is so totally not written for giant robots
=================================
System operational: ... ok
Time to ion canon charge is 9m 21s
Booster rocket in AFTERBURNER state
Range check is optimal
Rocket fuel is 10h 19m 40s to depletion
Beer served is type WICKSE LAGER, chill optimal
Suggested catchphrase is 01_FIGHTING_SPIRIT_GOGOGO
Virtual ... on
Run Code Online (Sandbox Code Playgroud)

但是,如果我在变量赋值的上下文中调用它,我还希望它将输出作为列表传递:

not_robot_stat = check_status()
print not_robot_stat
>>> {'cond_op': 1, 't_canoncharge': 1342, 'stage_booster': 5, 'range_est_sigma': 0.023, 'fuel_est': 32557154, …
Run Code Online (Sandbox Code Playgroud)

python functional-programming bytecode

1
推荐指数
1
解决办法
703
查看次数