小编ale*_*vas的帖子

在球体上均匀分散n个点

我试图在球体上分散n个点,使得每个点在其周围具有"相同"区域.基本上,我试图通过评估n个点并假设每个区域元素是相同的(并且等于4pi r ^ 2/n)来在球体上集成函数.

我的问题与问题非常相关,但我似乎无法同意"接受"答案中提供的代码按预期工作(参见附图,通过选择R = 1000,nx = ny = 40生成).显然,我的观点更加集中在两极并且非常集中在赤道上.

有什么建议?

编辑:作为参考,我确实找到了一些生成网格的软件,使得每个点周围都有相等的"区域"(向下滚动以查看球体上的均匀区域分布),但是不是实现它们的代码,而是使用较少的 -耗时的方法:我简单地迭代方位角和极角([0,2pi]和[0,pi])并计算每个补片的''无穷小''区域(da = r ^ 2 sin theta dtheta dphi).这基本上是我在整个领域进行整合所需要的,我只是希望统一区域分布不会那么难实现.

algorithm math geometry integrate

18
推荐指数
2
解决办法
2万
查看次数

在Bash中循环遍历目录

我有一个关于bash如何工作的基本问题,以及一个相关的实际问题.

基本问题:假设我在一个有三个子目录的目录中:a,b和c.

母鸡的代码

for dir in $(ls)
do 
    echo $dir
done
Run Code Online (Sandbox Code Playgroud)

吐出:

a b c
a b c
a b c
Run Code Online (Sandbox Code Playgroud)

即,dir始终存储我的所有文件/目录的列表cwd.我的问题是:为什么世界会这么方便?在我看来,dir一次存储每个元素更有用和直观,即我想要输出

a
b
c
Run Code Online (Sandbox Code Playgroud)

另外,根据其中一个答案 - 使用它是错误的for dir in $(ls),但是当我使用时,for dir in $(ls -l)我得到更多的副本a b c(比cwd中的目录/文件更多).这是为什么?

我的第二个问题是实用的:如何在我cwd用大写字母W开头的所有目录(不是文件!)上循环?我开始了

for dir in `ls -l W*`
Run Code Online (Sandbox Code Playgroud)

但这失败了因为a)问题1和b)中的原因,因为它不排除文件.建议表示赞赏.

bash

15
推荐指数
2
解决办法
4万
查看次数

gnuplot根据数据文件的第四列绘制颜色

我有一个包含4列数据的数据文件,前三列指定一个点(x,y,z),第四列是1,2或3 - 我希望该点基于值的颜色着色第四列(即,如果它是2,颜色为红色,如果为3,绿色,如果为1,蓝色)

gnuplot

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

模板的简单示例

这是一个简单的问题,我确信它已经得到了回答,但我似乎无法找到一个好的答案.

我有一个班,点:

template<class T>
Point{
\\code
}
Run Code Online (Sandbox Code Playgroud)

...现在我想要一个点向量,其中一些有T作为整数,其中T为双精度.我想写点类似的东西

template<class T>
std::vector<Point<T> > points;
Run Code Online (Sandbox Code Playgroud)

但是,唉,这不会编译错误"预期'模板'之前的primary-expression'".我无法使用此代码进行操作以使其正常工作.另外相关的是点在主类中,所以我不能在模板外面粘贴模板声明.

如果有人能指导我解决问题,我会非常感激.

谢谢.

c++ templates

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

Matlab:字符串不是真正的字符串?

我有一个脚本将图像打印到文件.我希望我打印的文件的名称是动态的 - 即我希望输出文件名依赖于某些参数.有点像这样:

outputFileNames = {'1.0' '1.25' '1.75'};

%....some code to determine which outputFileName I should use

f=figure('visible','off');  

%.....code to populate figure .....

fname = strcat('prefix', outputFileNames(index),'suffix');
print(f,'-dpsc2', '-append',fname)
Run Code Online (Sandbox Code Playgroud)

我一直收到这个错误:

Error using LocalCheckHandles (line 81)
Handle input argument contains non-handle value(s).

Error in print>LocalCreatePrintJob (line 366)
handles = checkArgsForHandleToPrint(0, varargin{:});

Error in print (line 160)
[pj, inputargs] = LocalCreatePrintJob(varargin{:});

Error in GenerateFieldPlots (line 57)
print(f,'-dpsc2', '-append',fname)
Run Code Online (Sandbox Code Playgroud)

当我检查fname的值时prefix1.0suffix(根据需要),当我检查index我得到的值时1.如果我替换fname = strcat('prefix', outputFileNames(index),'suffix');fname = …

pdf string matlab

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

标签 统计

algorithm ×1

bash ×1

c++ ×1

geometry ×1

gnuplot ×1

integrate ×1

math ×1

matlab ×1

pdf ×1

string ×1

templates ×1