小编str*_*ter的帖子

如何在LaTeX中包含一个文件而不会导致新页面

我希望,这个问题不是太偏僻.

我有一个更大的学校项目,涉及一些文件.该文档是一个LaTeX文件,如下所示:

...
some explanation

\section {someCode}
\include{someCode.hs}
some explanation
...
Run Code Online (Sandbox Code Playgroud)

这些文件someCode.hs.tex是自动genereated从他们相应的.hs使用Pygments来做和一个Makefile -files.

问题是:每次,我都包含一些东西,之前插入了分页符.这既不是预期也不是想要的.我用Google搜索,但没有找到答案.有任何想法吗?

latex include page-break pygments

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

从fortran中的.csv文件中读取数据

我正在使用一个软件,它给我一个.csv文件,我想借助一个fortran代码阅读.该.csv文件具有以下形式:

balance for 1. Unit: kg N/ha
___________________________________________________________________________________________________________________________________________________________________________
,N Pools,,,,,Influx N,,,,,Efflux N
Day,iniSON,iniSIN,endSON,endSIN,dSoilN,Deposit,Fertilizer,Manure,Litter,Sum-In...(**20 parameters**)
___________________________________________________________________________________________________________________________________________________________________________
 1,5973.55,  20.20,5973.51,  20.23,  -0.00,   0.00,   0.00,   0.00,   0.00,   0.00,   0.00,   0.00,   0.00,   0.00,   0.00,   0.00,   0.00,  -0.00,   0.00
.........
Run Code Online (Sandbox Code Playgroud)

我有365行具有这样的值.

为了阅读第一行,我使用了以下内容:

program od

implicit none
integer :: res
character(LEN=200) :: head1,head2,head3,head4,head5
open(10, file="Balance_N_1.csv",access='sequential',form="formatted",iostat=res)
open(9,file="out.txt")
read(10,fmt='(A)', iostat=res) head1,head2,head3,head4,head5
write(9,*) head1,head2,head3,head4,head5       

end program od
Run Code Online (Sandbox Code Playgroud)

如何读取后面的数据并将它们放在矩阵中以便我可以使用某些值执行计算?

csv fortran

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

matplotlib plot_surface带有非线性彩色图的3D图

我有以下python代码,它显示以下3D图. 情节显示在地板上的凹凸

我的代码是:

from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
from matplotlib import cm
import numpy as np


# Generate data example
X,Y = np.meshgrid(np.arange(-99,-90), np.arange(-200,250,50))
Z = np.zeros_like(X)
Z[:,0] = 100.
Z[4][7] = 10

# Normalize to [0,1]
Z = (Z-Z.min())/(Z.max()-Z.min())
colors = cm.viridis(Z)
rcount, ccount, _ = colors.shape

fig = plt.figure()
ax = fig.gca(projection='3d')
surf = ax.plot_surface(X, Y, Z, rcount=rcount, ccount=ccount,
                       facecolors=colors, shade=False)

surf.set_facecolor((0,0,0,0))
plt.show()
Run Code Online (Sandbox Code Playgroud)

我想以不同的颜色为XY平面上的不规则颜色着色.我希望能够突出XY平面上的凸起.我怎么做?

python 3d plot matplotlib colormap

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

计算物理项目中的目录结构

现在的情况

我的科学项目主要包含具有物理目的的不同分析和数值计算,即我使用 Mathematica、MATLAB、Fortran。当然,使用 git 这样的版本控制程序提交进度是一个好主意。

我问一些朋友构建文件的最佳方法是什么。除了简单且众所周知的程序员文件结构(,,,,,/bin/... )之外,我没有找到令人满意但相似的答案/dat//doc//src/

我希望这个问题不会像物理学家提出的那样被解决;)因为我猜许多科学家在某种程度上或多或少地面临着同样的问题。由于知道程序员以前遇到过此类问题,我不会在Physics Stack Exchange上问这个问题,它可能会被标记为off-topictoo broad

例子

在我的上一个项目中,我具有以下全局结构,其中不同项目项之间进行了一些交互:

/External_Code_Contribution/
/Experimental_Data/
/Analytical_Calculations/
  /Project_Issue_1/
  /Project_Issue_5/
/Documentations/
  /Thesis/
  /Papers/
  /Talks/
/Literature/
/Project_Organization/
/Numerical_Calculations/
  /Project_Issue_1/
    /SubIssue_A/
    /SubIssue_B/
    /SubIssue_C/
  /Project_Issue_2/
  /Project_Issue_3/
  /Project_Issue_4/
  /Project_Issue_6/
Run Code Online (Sandbox Code Playgroud)

描述: 在这个项目中,我根据文件的功能(外部贡献、实验数据、数字、文档等)对文件进行了划分,然后根据问题(在该步骤中计算的内容)对它们进行了细分,其中每个问题又包含子问题(例如,使用不同数据集进行类似计算)带有源代码、二进制文件和处理后的数据(为简单起见,全部位于同一目录中)。

不幸的是,在这种方法中,我必须:

  • 请参阅相应问题中的源代码(更改任何内容都可能导致不兼容的危险),或者
  • 将源代码复制到每个新问题(每个具有相同名称但位于不同文件夹中的源代码文件可能不同)。

问题

谁遇到过在目录中构建项目的问题?请告诉我你的方法以及使你采用这种结构的论点!

可能的补充:当我如上所述为项目设置文件结构时应该记住什么?)

如果您不完全理解答案,请随时提问,而不是举报。谢谢你!

directory physics structure directory-structure project

5
推荐指数
0
解决办法
388
查看次数

使用 pytest 教程时出错

我读到单元测试是一个出色的功能,可以编写更好的代码并断言某些目标代码的功能保持不变。所以我想用它...

我在我的 Linux 机器上使用 Anaconda。

我通过阅读他们主页上的pytest手册入门指南开始使用。成功安装后,出现第一个(意外的)错误:

strpeter@linuxComputer:~$ py.test 
================================================== test session starts ===================================================
platform linux2 -- Python 2.7.8 -- py-1.4.25 -- pytest-2.6.3
collected 0 items / 1 errors 

========================================================= ERRORS =========================================================
___________________________________________________ ERROR collecting . ___________________________________________________
anaconda/lib/python2.7/site-packages/py/_path/common.py:331: in visit
    for x in Visitor(fil, rec, ignore, bf, sort).gen(self):
anaconda/lib/python2.7/site-packages/py/_path/common.py:377: in gen
    for p in self.gen(subdir):
anaconda/lib/python2.7/site-packages/py/_path/common.py:377: in gen
    for p in self.gen(subdir):
anaconda/lib/python2.7/site-packages/py/_path/common.py:377: in gen
    for p in self.gen(subdir):
anaconda/lib/python2.7/site-packages/py/_path/common.py:377: in gen
    for p in self.gen(subdir):
anaconda/lib/python2.7/site-packages/py/_path/common.py:367: in …
Run Code Online (Sandbox Code Playgroud)

python unit-testing pytest

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

Python:定义具有依赖属性的类

我的目标是编写一个可用于计算设备所有属性的类。

import numpy as np


class pythagoras:
    def __init__(self, a=None, b=None, c=None):
        self.a = a
        self.b = b
        self.c = c

        if(a == None):
            assert(b != None)
            assert(c != None)
            self.a = np.sqrt(c**2 - b**2)
        elif(b == None):
            assert(a != None)
            assert(c != None)
            self.b = np.sqrt(c**2 - a**2)
        elif(c == None):
            assert(a != None)
            assert(b != None)
            self.c = np.sqrt(a**2 + b**2)
        else:
            assert (a**2 + b**2 == c**2), "The values are incompatible."


example1 = pythagoras(a=3, b=4)
print(example.c)
# …
Run Code Online (Sandbox Code Playgroud)

python class python-3.x

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

如何将numpy数组乘以标量

我有一个numpy数组,我试图将它乘以标量,但它不断抛出错误:

TypeError: unsupported operand type(s) for *: 'numpy.ndarray' and 'int'
Run Code Online (Sandbox Code Playgroud)

我的代码是:

Flux140 = ['0.958900', 'null', '0.534400']
n = Flux140*3
Run Code Online (Sandbox Code Playgroud)

python arrays scalar numpy

3
推荐指数
1
解决办法
4万
查看次数

Numpy:最大值是 NaN

我关于 Python 的问题真的很简单:我必须修改什么才能使函数max()为任何编译器返回真实值?

import numpy as np
a = np.array([-1, 0, 1, np.nan])
# The maximal value is 1. It is not nan!
a.max()
Run Code Online (Sandbox Code Playgroud)

有可能使用以下代码,但对我来说看起来很难看:

a[np.logical_not(np.isnan(a))].max()
Run Code Online (Sandbox Code Playgroud)

python numpy

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

MATLAB:获取文件的最后修改时间

我正在寻找做一些例程(更新a file.m)的MATLAB代码,如果file.csv是最近编辑的file.m.

应该是这样的东西:

% Write time extraction
tempC     = GetFileTime('file.csv', [], 'Write');
tempdateC = tempC.date
tempM     = GetFileTime('file.m', [], 'Write');
tempdateM = tempM.date

% Write time comparison
if numel(dir('file.m')) == 0 || tempdateC >= tempdateM
    matDef = regexprep(fileread('file.csv'), '(\r\n|\r|\n)', ';\n');
    f = fopen('file.m', 'w');
    fwrite(f, ['Variable = [' matDef(1:end) '];']);
    fclose(f);
end
Run Code Online (Sandbox Code Playgroud)

时间戳提取的行似乎是不正确的MATLAB代码.其余的工作(评估外部文件字符串中的变量).

matlab timestamp

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

Python:根据不同的字母顺序排序

假设我有一个不同顺序的字母表:{H,V,R,L,D,A}.现在我想'HV'按照这个顺序订购字符串.我期待的东西应该是这样的:

$ alphabet = 'HVRLDA'
$ sorted(['RL','HH','AH'], key=lambda word: [alphabet.index(c) for c in word])
['HH','RL','AH']
Run Code Online (Sandbox Code Playgroud)

这是根据Python中的自定义字母对Sorting字符串值中已经提到的任务.如果其中一个字符串包含此字母表外的字符,则脚本将中止并显示错误消息:

ValueError: substring not found
Run Code Online (Sandbox Code Playgroud)

我希望Python根据它们的ASCII代码处理非出现的字符.在这个意义上,其余字母应附加到此字母表中.

感谢您的回复,我希望这个问题也可以帮助其他人.

python sorting python-2.7

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