小编Dou*_*ple的帖子

返回Groebner Basis的元素

这个问题可以指任何计算机代数系统,它能够从一组多项式(Mathematica,Singular,GAP,Macaulay2,MatLab等)计算Groebner基础.

我正在使用一个超定的多项式系统,其中完整的groebner基础太难以计算,但是对于我来说,能够打印出找到的groebner基本元素对我来说是有价值的,这样我就可以知道是否有特定的多项式是基于groebner的.有没有办法做到这一点?

math matlab wolfram-mathematica singular gap-system

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

<li>之间的差距

为了避免长列表,我将我的li设置为float:left以便它们交替行.然而,有时当li中的内容占用两行时,这会导致元素之间的无意间隙.我的HTML是:

<ul class="gmc-ingredient-list">                                   
<li>500g Tagliatelle</li>                                                                   
<li>50g wortel</li>                                 
<li>50g ui</li>                                  
<li>50g bleekselderij</li>                                  
<li>100g pancetta</li>                                  
<li>200g half-om-half-gehakt</li>                                  
<li>200g rundergehakt</li>                                  
<li>200 ml Primitivo (rode wijn)</li>                                  
<li>200ml runderbouillon</li>                                  
<li>5 eetlepels tomatenpuree</li>                                  
<li>Olijfolie</li>                                  
<li>Zeezout</li>                                  
<li>Verse peper</li>                                             
</ul>
Run Code Online (Sandbox Code Playgroud)

我的CSS是:

ul.gmc-ingredient-list { 
margin: 0; 
padding: 0;
list-style: none; 
width: 300px; 
}

ul.gmc-ingredient-list li { 
background: url(http://allesoveritaliaanseten.nl/wp-content/uploads/2012/11/aoie-list.png) no-repeat scroll left top transparent; 
list-style: none outside none;
padding: 0px 0 0 20px; 
width: 130px; 
float: left;
}
Run Code Online (Sandbox Code Playgroud)

输出看起来像http://allesoveritaliaanseten.nl/ragu-alla-bolognese/

但也有一些情况下,李占用两行,输出就像http://allesoveritaliaanseten.nl/italiaanse-tomatensoep/

如何停止显示这些差距的列表?

html css html-lists gaps-in-visuals

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

WPF选项卡控制标题之间的间距

WPF Tabcontrol的默认行为是将Tab Headers放在彼此相邻的位置,中间没有任何空白区域.如果我想在标题之间指定间隙怎么办?我是否必须为此定义控件模板?我对世界粮食计划署比较陌生,对此我们表示感谢.

谢谢

wpf tabcontrol header spacing gaps-in-visuals

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

如何在WPF DataGrid中强制连续单元之间的零像素间隙

我正在WPF中构建一个应用程序以满足自定义需求.首先我选择了自定义控件,但后来发现我需要的大部分内容已经在Datagrid Control中实现了.然而,有一个小故障:

与数据网格的问题是,它强制最小的2像素间隙的两个连续单元之间(1上的网格线的每一侧).为清晰起见,请查看下图:

.请注意两个连续单元格之间由Datagrid强制执行的2像素间隙:http: //img265.imageshack.us/img265/3545/figurem.png

(堆栈溢出不会让我在我的问题中添加图像,引用新用户的垃圾邮件保护策略)

.

这不符合我的要求,因为我想要的内容出现"连续"(不能有2个像素这一空白;我想要连接线条看上去"连接").我尝试使用GridLinesVisibility,但它没有帮助.DataGrid托管一个这样的自定义控件:

<DataGrid.Columns>
            <DataGridTemplateColumn Width="25" Header="">
                <DataGridTemplateColumn.CellTemplate>
                    <DataTemplate>
                        <ContentControl Content="{Binding Path=MyCustomControl}" Margin="0"></ContentControl>
                    </DataTemplate>
                </DataGridTemplateColumn.CellTemplate>
            </DataGridTemplateColumn>

....
</DataGrid.Columns>
Run Code Online (Sandbox Code Playgroud)

我到目前为止尝试过:

  1. 关闭GridLine(参见结果:http://img263.imageshack.us/img263/8602/figure2j.png)
  2. 将content属性的边距设置为0.
  3. 搜索谷歌和stackoverflow
  4. 咨询了一些书.

但似乎没有出现.

是否有解决方案/某些黑客或解决方法或者我是否必须从头开始创建所有内容?我对c#有很好的经验,但我是WPF的新手.

请帮忙.

wpf datagrid cells gaps-in-visuals

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

使用GAP识别组

如何使用GAP从乘法表中识别组的名称?我知道您可以从一组生成器中定义一个组,然后在内部表集中查找该组

gap> g := Group([ (1,2), (1,2,3,4,5) ]);    
Group([ (1,2), (1,2,3,4,5) ])

gap> IdGroup(g);                            
[ 120, 34 ]
Run Code Online (Sandbox Code Playgroud)

但是如何找出小组的名字[120,34]?

abstract-algebra gap-system

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

如何在PARI/GP中进行多行嵌套for循环?

如何在PARI/GP中创建跨越每个级别多行的嵌套循环?我经常需要在循环中做多个事情,为了便于阅读,我不喜欢在一行上编写循环.对于一个变量的循环,我一直这样做:

for(i=1,10,{
    printf("%u\n",i);
})
Run Code Online (Sandbox Code Playgroud)

但是,对于嵌套循环,我只设法将换行符放在一个级别.这有效:

for(i=1, 10, for(j=1, 10, {
     printf("%2u\t%2u\n", i, j);
}));
Run Code Online (Sandbox Code Playgroud)

这也有效:

for(i=1, 10, {
     for(j=1, 10, printf("%2u\t%2u\n", i, j));
});
Run Code Online (Sandbox Code Playgroud)

但是,这是我真正想做的事情:

for(i=1, 10, {
     for(j=1, 10, {
          printf("%2u\t%2u\n", i, j);
     });
});
Run Code Online (Sandbox Code Playgroud)

最后一个例子不起作用; 它给出了一个错误:

  ***   sorry, embedded braces (in parser) is not yet implemented.
... skipping file 'nested_for.gp'
  ***   at top-level: printf("%2u\t%2u\n",
  ***                 ^--------------------
  *** printf: not a t_INT in integer format conversion: i.
  ***   Break loop: type 'break' to go back to GP
Run Code Online (Sandbox Code Playgroud)

我在OS X …

pari-gp

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

如何基于Python中的注释块拆分文本文件?

我早上的大部分时间都没有解决这个简单的问题.使用python,我想解析如下所示的数据文件:

# This is an example comment line, it starts with a '#' character.
# There can be a variable number of comments between each data set.
# Comments "go with" the data set that comes after them.
# The first data set starts on the next line:
0.0 1.0
1.0 2.0
2.0 3.0
3.0 4.0

# Data sets are followed by variable amounts of white space.
# The second data set starts after this comment
5.0 6.0
6.0 7.0 …
Run Code Online (Sandbox Code Playgroud)

python parsing

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

OpenMP,并行写入不同的数组元素

在OpenMP中,您可以并行写入该数组的不同元素吗?这是一个简单的测试程序:

#include <stdio.h>
#include <math.h>

int main(){

  const int n=100;
  int squares[n];

  // Can we write to distinct array elements simultaneously?
  // Valgrind+DRD doesn't like this.
#pragma omp parallel for
  for(int i=0; i<n; i++)
    squares[i]=i*i;

  // We definitely can read from distinct array elements simultaneously.
  int sumOfSquares=0;
#pragma omp parallel for reduction(+:sumOfSquares)
  for(int i=0; i<n; i++)
    sumOfSquares+=squares[i];

  // The result always seems to be correct.
  printf("sumOfSquares = %d = %d\n", sumOfSquares, n*(n-1)*(2*n-1)/6);

}
Run Code Online (Sandbox Code Playgroud)

我编译了上面的代码gcc -std=c99 -fopenmp -g openmp_arrays.c并检查了线程安全性 …

c arrays valgrind openmp thread-safety

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

什么限制了这个简单的OpenMP程序的扩展?

我试图了解48核系统上的并行化限制(4xAMD Opteron 6348,2.8 Ghz,每个CPU 12个核心).我写了这个微小的OpenMP代码来测试加速,我认为这是最好的情况(任务是令人尴尬的并行):

// Compile with: gcc scaling.c -std=c99 -fopenmp -O3                                                                                               

#include <stdio.h>
#include <stdint.h>

int main(){

  const uint64_t umin=1;
  const uint64_t umax=10000000000LL;
  double sum=0.;
#pragma omp parallel for reduction(+:sum)
  for(uint64_t u=umin; u<umax; u++)
    sum+=1./u/u;
  printf("%e\n", sum);

}
Run Code Online (Sandbox Code Playgroud)

我惊讶地发现缩放是高度非线性的.使用48个线程运行代码需要大约2.9s,使用36个线程运行3.1s,使用24个线程运行3.7s,使用12个线程运行4.9s,使用1个线程运行代码需要57s.

不幸的是,我不得不说计算机上运行一个进程使用100%的一个核心,因此可能会影响它.这不是我的过程,所以我无法结束它来测试差异,但不知何故我怀疑这是在19到20倍的加速和理想的48倍加速之间产生差异.

为了确保它不是OpenMP问题,我同时运行了两个程序副本,每个程序有24个线程(一个用umin = 1,umax = 5000000000,另一个用umin = 5000000000,umax = 10000000000).在这种情况下,程序的两个副本在2.9s之后完成,因此它与使用单个程序实例运行48个线程完全相同.

什么阻止了这个简单程序的线性缩放?

c performance multithreading openmp smp

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

如何以编程方式截断Maple中的订单“ O”字词?

在Maple中,taylor(exp(x),x,2);返回1+ x + O(x 2)。如何在删除O(x 2)项的情况下自动将结果转换为相同的表达式?就是removeBigO(taylor(exp(x),x,2));要返回1 + x吗?”

maple

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