我必须在MATLAB中求一个线性方程组A*x=B,其中A对称且其元素取决于指数的差异:Aij=f(i-j).
我使用迭代求解器,因为它的大小A是40000x40000.迭代求解器需要确定产品A*x在哪里x是测试解决方案.对该产品的评估结果证明是卷积,因此可以通过快速傅里叶变换(cputime~ Nlog(N)而不是N^2)来完成.我对这个问题有以下问题:
这是卷积通告吗?因为如果它是循环的,我认为我必须使用新矩阵的特定索引来获取fft.是对的吗?
我发现难以为fft编写例程,因为我无法理解我应该使用的索引.是否有任何现成的例程,我可以用fft直接评估产品A*x而不是卷积?实际上,矩阵A由3×3块构成并且是对称的.产品的现成例程A*x对我来说是最好的解决方案.
先感谢您,
帕诺斯
我的一个SQL查询有问题.这是我的查询:
explain
SELECT DISTINCT profiles.hoofdrubriek, profiles.plaats, profiles.bedrijfsnaam, profiles.gemeente, profiles.bedrijfsslogan, profiles.straatnaam, profiles.huisnummer, profiles.postcode, profiles.telefoonnummer, profiles.fax, profiles.email, profiles.website, profiles.bedrijfslogo
FROM profiles
LEFT JOIN profile_subrubriek ON profiles.ID=profile_subrubriek.profile_id
LEFT JOIN rubrieken ON profile_subrubriek.subrubriek_id=rubrieken.ID
WHERE (
rubrieken.rubriek = 'Pedicurepraktijken' OR
profiles.hoofdrubriek = 'Pedicurepraktijken'
)
ORDER BY profiles.grade DESC, profiles.bedrijfsnaam
Run Code Online (Sandbox Code Playgroud)
这段查询中的"OR"运算符会导致麻烦:
rubrieken.rubriek = 'Pedicurepraktijken' OR profiles.hoofdrubriek = 'Pedicurepraktijken'
Run Code Online (Sandbox Code Playgroud)
我已经在我的所有表上应用了索引,如果我取出上面两行代码中的一行,它就能正常运行.将它们与OR运算符组合会导致它崩溃并拒绝使用我在配置文件表中的'hoofdrubriek'列上应用的索引.在我的相关表格的布局下面:
CREATE TABLE `profiles` (
`ID` varchar(255) NOT NULL DEFAULT '',
......
`hoofdrubriek` varchar(255) DEFAULT NULL,
...
`timestamp` datetime DEFAULT NULL,
`meerderevestigingen` varchar(255) NOT NULL,
`grade` int(5) NOT …Run Code Online (Sandbox Code Playgroud) 我想在两个日期之间选择这样的:
SELECT p.Code, p.Name, sum(h.PA = 1) AS PA, sum(h.PB = 1) AS PB,
sum(h.PG = 1) AS PG, sum(h.GoedkeuringDoorNew = 'GF') AS GF,
sum(h.GoedkeuringDoorNew = 'SB') AS SB, sum(h.GoedkeuringDoorNew = 'VIA') AS VIA,
sum(h.Blanco) AS Blanco
FROM psthostess p
LEFT JOIN `psttodo-uit` h
ON h.`Hostess Code` = p.Code
AND DATE(h.`afgewerkt tablet datum`) BETWEEN CURDATE()
AND (CURDATE() - INTERVAL 1 DAY)
WHERE p.Indienst = 1 GROUP BY p.Code, p.Name
Run Code Online (Sandbox Code Playgroud)
但我没有得到任何结果.
我想要今天和昨天的结果.但是当我这样做的时候
SELECT *
FROM `psttodo-uit` p
WHERE DATE(p.`afgewerkt tablet datum`) …Run Code Online (Sandbox Code Playgroud) 我有一个数组初始化和填充,但我不能在其填充的任何其他方法中访问它的值.如果我尝试在其他方法中使用它我得到nullPointerException.例如,如果我在init方法中说"System.out.println(board [2] [2])"它可以工作,但在另一个方法中抛出nullPointerException.我已经花了好几个小时才搞清楚,但不知道出了什么问题?任何人都可以对我的问题有所了解吗?非常感谢.谢谢
public class Program2 extends JPanel implements ActionListener
{
private LifeCell[][] board;
private JButton next;
private JFrame frame;
public static void main(String[] args) {new Program2();}
public Program2()
{
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setContentPane(this);
this.init();
frame.pack();
frame.setVisible(true);
}
public void init()
{
LifeCell[][] board = new LifeCell[10][10];
this.setPreferredSize(new Dimension(400, 500));
this.setLayout(null);
for (int r = 0; r < 10; r++)
{
for (int c = 0; c < 10; c++)
{
board[r][c] = new LifeCell(board, r, c);
this.add(board[r][c]);
board[r][c].setBounds(x,y,40,40);
this.setVisible(true);
System.out.println(board[2][2]) //works …Run Code Online (Sandbox Code Playgroud) 我的项目PHP 5.3现在正在运行.现在我想将PHP升级到更高版本7.x.
我可以这样做吗?
在更新之前,我试图搜索差异和复杂性,但无法得到满意的答案.
搜索链接
链接1 - Updraft文章
链接2 - PHP手册
我还想知道是否需要更改当前在PHP 5.3上正确运行的代码?
任何建议将不胜感激.