Пример #1
0
void MainWindow::on_find_mu_button_clicked()
{
    periods.clear();
    extraSelections.clear();
    many_icx.clear();

    ui->icx_label->clear();
    ui->icx_label_3->clear();
    extraSelections.clear();
    ui->many_icx_label->clear();

    QString text=ui->open_text->toPlainText().toUpper();

    for(int i=0;i<text.length();i++)
    {
        if(text[i]=='\n')
            text[i]=' ';
    }

    ui->open_text->setPlainText(text);

    ui->open_text->setExtraSelections(extraSelections);

    find_mu();



    create_graphic();
    block_all(true);
}
Пример #2
0
void loop_plotter (Control * control, FILE * fout)
{
	double mu = find_mu (control->dat);

	int a	= 0,	// counter as to how far we've come
	    b	= (int) (((control->bmax - control->bmin)/control->dbeta) *
			    ((control->wmax - control->wmin)/control->dw));

	if (control->fix_beta)
		b = (int) ((control->wmax - control->wmin)/control->dw);

	if (!control->fix_wmega)
	{
		do
		{
			do
			{
				double integral = integrate (control->dat, mu);

				fprintf (fout, "% 9.6lf % 9.6lf % 9.6lf %9.6lf\n",
						control->dat->w,
						control->dat->beta,
						integral,
						mu);

				control->dat->w	+= control->dw;
				progress_bar (a, b, 0);

				a++;

			} while (control->dat->w <= control->wmax);

			if (control->fix_beta)
				break;

			control->dat->w	 = control->wmin;
			control->dat->beta += control->dbeta;
			mu = find_mu (control->dat);
			fprintf (fout, "\n");
		
		} while (control->dat->beta <= control->bmax);
	}

	else if (control->fix_wmega)
	{
		b = (int) ((control->bmax - control->bmin)/control->dbeta);
		
		do
		{
			double integral = integrate (control->dat, mu);

			fprintf (fout, "% 9.6lf % 9.6lf % 9.6lf %9.6lf\n",
					control->dat->beta,
					control->dat->w,
					integral,
					mu);

			control->dat->beta += control->dbeta;
			mu = find_mu (control->dat);
			progress_bar (a, b, 0);

			a++;
		} while (control->dat->beta <= control->bmax);
	}
}