コード例 #1
0
ファイル: psppire-data-editor.c プロジェクト: RobertDash/pspp
static void
init_data_sheet (PsppireDataEditor *de)
{
  GtkAdjustment *vadj0, *hadj0;
  GtkAdjustment *vadj1, *hadj1;
  GtkWidget *sheet ;

  de->vaxis[0] = psppire_axis_new ();
  de->vaxis[1] = psppire_axis_new ();

  /* There's only one horizontal axis, since the
     column widths are parameters of the variables */
  de->haxis = psppire_axis_new ();

  de->split = TRUE;
  de->paned = gtk_xpaned_new ();

  init_sheet (de, 0, NULL, NULL, de->vaxis[0], de->haxis);
  gtk_widget_show (de->sheet_bin[0]);
  vadj0 = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (de->sheet_bin[0]));
  hadj0 = gtk_scrolled_window_get_hadjustment (GTK_SCROLLED_WINDOW (de->sheet_bin[0]));

  g_object_set (de->sheet_bin[0], "vscrollbar-policy", GTK_POLICY_NEVER, NULL);
  g_object_set (de->sheet_bin[0], "hscrollbar-policy", GTK_POLICY_NEVER, NULL);

  init_sheet (de, 1, NULL, vadj0, de->vaxis[0], de->haxis);
  gtk_widget_show (de->sheet_bin[1]);
  sheet = gtk_bin_get_child (GTK_BIN (de->sheet_bin[1]));
  psppire_sheet_hide_row_titles (PSPPIRE_SHEET (sheet));
  hadj1 = gtk_scrolled_window_get_hadjustment (GTK_SCROLLED_WINDOW (de->sheet_bin[1]));
  g_object_set (de->sheet_bin[1], "vscrollbar-policy", GTK_POLICY_ALWAYS, NULL);
  g_object_set (de->sheet_bin[1], "hscrollbar-policy", GTK_POLICY_NEVER, NULL);

  init_sheet (de, 2, hadj0, NULL, de->vaxis[1], de->haxis);
  gtk_widget_show (de->sheet_bin[2]);
  sheet = gtk_bin_get_child (GTK_BIN (de->sheet_bin[2]));
  psppire_sheet_hide_column_titles (PSPPIRE_SHEET (sheet));
  g_object_set (de->sheet_bin[2], "vscrollbar-policy", GTK_POLICY_NEVER, NULL);
  g_object_set (de->sheet_bin[2], "hscrollbar-policy", GTK_POLICY_ALWAYS, NULL);
  vadj1 = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (de->sheet_bin[2]));

  init_sheet (de, 3, hadj1, vadj1, de->vaxis[1], de->haxis);
  gtk_widget_show (de->sheet_bin[3]);
  sheet = gtk_bin_get_child (GTK_BIN (de->sheet_bin[3]));
  psppire_sheet_hide_column_titles (PSPPIRE_SHEET (sheet));
  psppire_sheet_hide_row_titles (PSPPIRE_SHEET (sheet));
  g_object_set (de->sheet_bin[3], "vscrollbar-policy", GTK_POLICY_ALWAYS, NULL);
  g_object_set (de->sheet_bin[3], "hscrollbar-policy", GTK_POLICY_ALWAYS, NULL);

  gtk_xpaned_pack_top_left (GTK_XPANED (de->paned), de->sheet_bin[0], TRUE, TRUE);
  gtk_xpaned_pack_top_right (GTK_XPANED (de->paned), de->sheet_bin[1], TRUE, TRUE);
  gtk_xpaned_pack_bottom_left (GTK_XPANED (de->paned), de->sheet_bin[2], TRUE, TRUE);
  gtk_xpaned_pack_bottom_right (GTK_XPANED (de->paned), de->sheet_bin[3], TRUE, TRUE);

  gtk_xpaned_set_position_y (GTK_XPANED (de->paned), 150);
  gtk_xpaned_set_position_x (GTK_XPANED (de->paned), 350);
}
コード例 #2
0
ファイル: sheet_evo.c プロジェクト: truokola/archive
int main() {

    int np = 9; /* number of points on the sheet */
    double dt = .005;
    int step = 0;
    double time = 0.0;
    double *de, *x, *y, *gamma;
    double c[4];
/*     int j; */
/*     double sumg; */
    char fname[30];
    int dump_num = 0;
    double dump_time = 1;
/*     double max; */
/*     double sum; */
/*     FILE *dump; */
/*     double mindist = SQR(.5/np); */
/*     double maxdist = SQR(1.5/np); */


    get_physical_params(c);

    de = vector(np);
    x = vector(np);
    y = vector(np);
    gamma = vector(np);

    init_sheet(de, x, y, gamma, np, 2.0*c[3]);
    
/*     getchar(); */



/*     dump = fopen("max2.dat", "w"); */

    while(1) {
	
	if(time >= dump_time * dump_num) {
	    sprintf(fname, "sheet_%03i.dat", dump_num);
	    dump_data(de, x, y, gamma, np, c, time, dt, fname);
	    dump_num++;
	}

	step++;
	time += dt;

	/*printf("\x1B[2J");*/
/*	printf("****  ");*/
/* 	printf("Step: %5i    Time: %8.5f (%8.5f s)   (dt = %9.4g)\n", */
/* 	       step, time, realtime, dt); */
/*	printf("  *****\n");*/

/* 	printf("Gamma before step:\t%f\n", integral(gamma,de,np)-1.0); */
	dt = do_timestep(de, &x, &y, &gamma, c, np, dt);

/* 	printf("Gamma before trim:\t%f\n", integral(gamma,de,np)-1.0); */
/* 	np = trim_distances(&de, &x, &y, &gamma, mindist, maxdist, np); */
/* 	printf("Gamma after (%i):\t%f\n\n", np,integral(gamma,de,np)-1.0); */

/* 	printf("Smooth x: "); */
/* 	fourier_smooth(x, np); */
/* 	printf("Smooth y: "); */
/* 	fourier_smooth(y, np); */

/* 	sum = integral(gamma,de,np)-1.0; */
/* 	if(fabs(sum) > 1e-12) { */
/* 	    printf("Step: %i   Gamma: %e\n", step, sum); */
/* 	    getchar(); */
/* 	} */
/* 	getchar(); */
/* 	sumg = 0.0; */
/* 	for(j = 0; j < np; j++) */
/* 	    sumg += gamma[j]*de[j]; */

/* 	printf("np: %3i\nSum g: %9.5e\n", np, sumg-1); */

/* 	max = dump_data(x, y, gamma, np, "sheet2.dat"); */
/* 	fprintf(dump, "%f\t%f\n", realtime, max); */
/* 	getchar(); */
 	
    }
/*     fclose(dump); */

    return 0;
}