Skip to content
Snippets Groups Projects
Gmsh.tab.cpp 378 KiB
Newer Older
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 314:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2416 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      TheShape.Num = Extrude_ProtudeSurface(TRANSLATE, (int)yyvsp[-4].d, yyvsp[-2].v[0], yyvsp[-2].v[1], yyvsp[-2].v[2],
					    0., 0., 0., 0., 0., 0., 0., 
					    0, NULL);
      Surface *s = FindSurface(TheShape.Num, THEM);
      if(!s){
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	//yymsg(WARNING, "Unknown Surface %d", TheShape.Num);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	TheShape.Type = 0;
      }
      else{
	TheShape.Type = s->Typ;
      }
      yyval.l = List_Create(1, 1, sizeof(Shape));
      List_Add(yyval.l, &TheShape);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 315:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2432 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      TheShape.Num = Extrude_ProtudeSurface(ROTATE, (int)yyvsp[-8].d, 0., 0., 0.,
					    yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], yyvsp[-4].v[0], yyvsp[-4].v[1], yyvsp[-4].v[2], yyvsp[-2].d,
					    0, NULL);
      Surface *s = FindSurface(TheShape.Num, THEM);
      if(!s){
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	//yymsg(WARNING, "Unknown Surface %d", TheShape.Num);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	TheShape.Type = 0;
      }
      else{
	TheShape.Type = s->Typ;
      }
      yyval.l = List_Create(1, 1, sizeof(Shape));
      List_Add(yyval.l, &TheShape);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 316:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2448 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      TheShape.Num = Extrude_ProtudeSurface(TRANSLATE_ROTATE, (int)yyvsp[-10].d, yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2],
					    yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], yyvsp[-4].v[0], yyvsp[-4].v[1], yyvsp[-4].v[2], yyvsp[-2].d,
					    0, NULL);
      Surface *s = FindSurface(TheShape.Num, THEM);
      if(!s){
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	//yymsg(WARNING, "Unknown Surface %d", TheShape.Num);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	TheShape.Type = 0;
      }
      else{
	TheShape.Type = s->Typ;
      }
      yyval.l = List_Create(1, 1, sizeof(Shape));
      List_Add(yyval.l, &TheShape);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 317:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2464 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      extr.mesh.ExtrudeMesh = false;
      extr.mesh.Recombine = false;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 318:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2469 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      int vol = NEWREG();
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      TheShape.Num = Extrude_ProtudeSurface(TRANSLATE, (int)yyvsp[-8].d, yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2],
					    0., 0., 0., 0., 0., 0., 0., 
					    vol, &extr);
      Surface *s = FindSurface(TheShape.Num, THEM);
      if(!s){
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	//yymsg(WARNING, "Unknown Surface %d", TheShape.Num);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	TheShape.Type = 0;
      }
      else{
	TheShape.Type = s->Typ;
      }
      yyval.l = List_Create(1, 1, sizeof(Shape));
      List_Add(yyval.l, &TheShape);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 319:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2486 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      extr.mesh.ExtrudeMesh = false;
      extr.mesh.Recombine = false;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 320:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2492 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      int vol = NEWREG();
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      TheShape.Num = Extrude_ProtudeSurface(ROTATE, (int)yyvsp[-12].d, 0., 0., 0.,
					    yyvsp[-10].v[0], yyvsp[-10].v[1], yyvsp[-10].v[2], yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].d, 
					    vol, &extr);
      Surface *s = FindSurface(TheShape.Num, THEM);
      if(!s){
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	//yymsg(WARNING, "Unknown Surface %d", TheShape.Num);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	TheShape.Type = 0;
      }
      else{
	TheShape.Type = s->Typ;
      }
      yyval.l = List_Create(1, 1, sizeof(Shape));
      List_Add(yyval.l, &TheShape);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 321:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2509 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      extr.mesh.ExtrudeMesh = false;
      extr.mesh.Recombine = false;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 322:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2515 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      int vol = NEWREG();
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      TheShape.Num = Extrude_ProtudeSurface(TRANSLATE_ROTATE, (int)yyvsp[-14].d, yyvsp[-12].v[0], yyvsp[-12].v[1], yyvsp[-12].v[2],
					    yyvsp[-10].v[0], yyvsp[-10].v[1], yyvsp[-10].v[2], yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].d,
					    vol, &extr);
      Surface *s = FindSurface(TheShape.Num, THEM);
      if(!s){
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	//yymsg(WARNING, "Unknown Surface %d", TheShape.Num);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	TheShape.Type = 0;
      }
      else{
	TheShape.Type = s->Typ;
      }
      yyval.l = List_Create(1, 1, sizeof(Shape));
      List_Add(yyval.l, &TheShape);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 323:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2535 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 324:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2538 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 325:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2544 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      double d;
      extr.mesh.ExtrudeMesh = true;
      extr.mesh.NbLayer = List_Nbr(yyvsp[-6].l);
      if(List_Nbr(yyvsp[-6].l) == List_Nbr(yyvsp[-4].l) && List_Nbr(yyvsp[-6].l) == List_Nbr(yyvsp[-2].l)){
	extr.mesh.NbElmLayer = (int*)Malloc(extr.mesh.NbLayer*sizeof(int));
	extr.mesh.ZonLayer = (int*)Malloc(extr.mesh.NbLayer*sizeof(int));
	extr.mesh.hLayer = (double*)Malloc(extr.mesh.NbLayer*sizeof(double));
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	for(int i = 0; i < List_Nbr(yyvsp[-6].l); i++){
	  List_Read(yyvsp[-6].l, i, &d);
	  extr.mesh.NbElmLayer[i] = (d>0)?(int)d:1;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	  List_Read(yyvsp[-4].l, i, &d);
	  extr.mesh.ZonLayer[i] = (int)d;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	  List_Read(yyvsp[-2].l, i, &d);
	  extr.mesh.hLayer[i] = d;
	}
      }
      else{
	yymsg(GERROR, "Wrong layer definition {%d, %d, %d}", 
	      List_Nbr(yyvsp[-6].l), List_Nbr(yyvsp[-4].l), List_Nbr(yyvsp[-2].l));
      List_Delete(yyvsp[-6].l);
      List_Delete(yyvsp[-4].l);
      List_Delete(yyvsp[-2].l);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 326:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2570 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      double d;
      extr.mesh.ExtrudeMesh = true;
      extr.mesh.NbLayer = List_Nbr(yyvsp[-4].l);
      if(List_Nbr(yyvsp[-4].l) == List_Nbr(yyvsp[-2].l)){
	extr.mesh.NbElmLayer = (int*)Malloc(extr.mesh.NbLayer*sizeof(int));
	extr.mesh.ZonLayer = (int*)Malloc(extr.mesh.NbLayer*sizeof(int));
	extr.mesh.hLayer = (double*)Malloc(extr.mesh.NbLayer*sizeof(double));
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	for(int i = 0; i < List_Nbr(yyvsp[-4].l); i++){
	  List_Read(yyvsp[-4].l, i, &d);
	  extr.mesh.NbElmLayer[i] = (d>0)?(int)d:1;
	  extr.mesh.ZonLayer[i] = 0;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	  List_Read(yyvsp[-2].l, i, &d);
	  extr.mesh.hLayer[i] = d;
	}
      }
      else{
	yymsg(GERROR, "Wrong layer definition {%d, %d}", 
	      List_Nbr(yyvsp[-4].l), List_Nbr(yyvsp[-2].l));
      }
      List_Delete(yyvsp[-4].l);
      List_Delete(yyvsp[-2].l);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 327:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2594 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      extr.mesh.Recombine = true;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 328:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2603 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      for(i = 0; i < List_Nbr(yyvsp[-3].l); i++){
	List_Read(yyvsp[-3].l, i, &d);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
        c = FindCurve(j, THEM);
	  c->ipar[0] = (yyvsp[-1].d>2)?(int)yyvsp[-1].d:2;
	  c->ipar[1] = sign(d);
	  c->dpar[0] = 1.0;
      List_Delete(yyvsp[-3].l);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 329:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2621 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      for(i = 0; i < List_Nbr(yyvsp[-6].l); i++){
	List_Read(yyvsp[-6].l, i, &d);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
        c = FindCurve(j, THEM);
	  c->ipar[0] = (yyvsp[-4].d>2)?(int)yyvsp[-4].d:2;
	  c->ipar[1] = sign(d); /* Progresion : code 1 ou -1 */
	  c->dpar[0] = fabs(yyvsp[-1].d);
      List_Delete(yyvsp[-6].l);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 330:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2639 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      for(i = 0; i < List_Nbr(yyvsp[-6].l); i++){
	List_Read(yyvsp[-6].l, i, &d);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
        c = FindCurve(j, THEM);
	  c->ipar[0] = (yyvsp[-4].d>2)?(int)yyvsp[-4].d:2;
	  c->ipar[1] = 2*sign(d); /* Bump : code 2 ou -2 */
	  c->dpar[0] = fabs(yyvsp[-1].d);
      List_Delete(yyvsp[-6].l);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 331:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2657 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      Surface *s = FindSurface((int)yyvsp[-4].d, THEM);
	yymsg(WARNING, "Unknown Surface %d", (int)yyvsp[-4].d);
	s->Method = TRANSFINI;
	k = List_Nbr(yyvsp[-1].l);
	if(k!=3 && k!=4){
	  yymsg(GERROR, "Wrong definition of Transfinite Surface %d: "
		"%d points instead of 3 or 4" , yyvsp[-4].d, k) ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	  for(i = 0; i < k; i++){
	    List_Read(yyvsp[-1].l, i, &d);
	    j = (int)fabs(d);
	    s->ipar[i] = j;
      List_Delete(yyvsp[-1].l);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 332:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2679 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      Surface *s = FindSurface((int)yyvsp[-4].d, THEM);
	yymsg(WARNING, "Unknown Surface %d", (int)yyvsp[-4].d);
        s->Method = ELLIPTIC;
        k = List_Nbr(yyvsp[-1].l);
        if(k != 4)
	  yymsg(GERROR, "Wrong definition of Elliptic Surface %d: "
		"%d points instead of 4" , yyvsp[-4].d, k) ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	  for(i = 0; i < k; i++){
	    List_Read(yyvsp[-1].l, i, &d);
	    j = (int)fabs(d);
	    s->ipar[i] = j;
      List_Delete(yyvsp[-1].l);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 333:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2700 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      Volume *v = FindVolume((int)yyvsp[-4].d, THEM);
	yymsg(WARNING, "Unknown Volume %d", (int)yyvsp[-4].d);
	v->Method = TRANSFINI;
	k = List_Nbr(yyvsp[-1].l);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	if(k != 6 && k != 8)
	  yymsg(GERROR, "Wrong definition of Transfinite Volume %d: "
		"%d points instead of 6 or 8" , yyvsp[-4].d, k) ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	  for(i = 0; i < k; i++){
	    List_Read(yyvsp[-1].l, i, &d);
	    j = (int)fabs(d);
	    v->ipar[i] = j;
      List_Delete(yyvsp[-1].l);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 334:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2721 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      for(i = 0; i < List_Nbr(yyvsp[-3].l); i++){
	List_Read(yyvsp[-3].l, i, &d);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	s = FindSurface(j, THEM);
	  s->RecombineAngle = (yyvsp[-1].d > 0 && yyvsp[-1].d < 90) ? yyvsp[-1].d : 90;
      List_Delete(yyvsp[-3].l);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 335:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2735 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      for(i = 0; i < List_Nbr(yyvsp[-1].l); i++){
	List_Read(yyvsp[-1].l, i, &d);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
        s = FindSurface(j, THEM);
	  s->Recombine = 1;
	  s->RecombineAngle = 30.;
        }
      List_Delete(yyvsp[-1].l);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 336:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2755 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ 
      ReplaceAllDuplicates(THEM);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 337:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2759 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ 
Christophe Geuzaine's avatar
Christophe Geuzaine committed
      IntersectAllSegmentsTogether();
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 338:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2768 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{yyval.i = 1;;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 339:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2769 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{yyval.i = 0;;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 340:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2770 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{yyval.i = -1;;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 341:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2771 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{yyval.i = -1;;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 342:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2772 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{yyval.i = -1;;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 343:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2776 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[0].d;           ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 344:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2777 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-1].d ;          ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 345:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2778 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = -yyvsp[0].d ;         ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 346:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2779 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[0].d;           ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 347:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2780 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = !yyvsp[0].d ;         ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 348:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2781 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-2].d - yyvsp[0].d ;     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 349:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2782 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-2].d + yyvsp[0].d ;     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 350:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2783 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-2].d * yyvsp[0].d ;     ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 351:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2785 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ 
      if(!yyvsp[0].d)
	yymsg(GERROR, "Division by zero in '%g / %g'", yyvsp[-2].d, yyvsp[0].d);
      else
	yyval.d = yyvsp[-2].d / yyvsp[0].d ;     
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 352:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2791 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = (int)yyvsp[-2].d % (int)yyvsp[0].d ;  ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 353:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2792 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = pow(yyvsp[-2].d, yyvsp[0].d) ;  ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 354:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2793 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-2].d < yyvsp[0].d ;     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 355:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2794 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-2].d > yyvsp[0].d ;     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 356:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2795 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-2].d <= yyvsp[0].d ;    ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 357:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2796 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-2].d >= yyvsp[0].d ;    ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 358:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2797 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-2].d == yyvsp[0].d ;    ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 359:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2798 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-2].d != yyvsp[0].d ;    ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 360:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2799 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-2].d && yyvsp[0].d ;    ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 361:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2800 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-2].d || yyvsp[0].d ;    ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 362:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2801 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-4].d? yyvsp[-2].d : yyvsp[0].d ; ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 363:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2802 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = exp(yyvsp[-1].d);      ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 364:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2803 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = log(yyvsp[-1].d);      ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 365:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2804 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = log10(yyvsp[-1].d);    ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 366:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2805 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = sqrt(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 367:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2806 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = sin(yyvsp[-1].d);      ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 368:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2807 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = asin(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 369:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2808 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = cos(yyvsp[-1].d);      ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 370:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2809 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = acos(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 371:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2810 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = tan(yyvsp[-1].d);      ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 372:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2811 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = atan(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 373:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2812 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = atan2(yyvsp[-3].d, yyvsp[-1].d); ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 374:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2813 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = sinh(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 375:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2814 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = cosh(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 376:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2815 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = tanh(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 377:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2816 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = fabs(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 378:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2817 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = floor(yyvsp[-1].d);    ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 379:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2818 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = ceil(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 380:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2819 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = fmod(yyvsp[-3].d, yyvsp[-1].d);  ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 381:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2820 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = fmod(yyvsp[-3].d, yyvsp[-1].d);  ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 382:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2821 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 383:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2822 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-1].d*(double)rand()/(double)RAND_MAX; ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 384:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2824 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = exp(yyvsp[-1].d);      ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 385:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2825 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = log(yyvsp[-1].d);      ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 386:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2826 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = log10(yyvsp[-1].d);    ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 387:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2827 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = sqrt(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 388:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2828 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = sin(yyvsp[-1].d);      ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 389:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2829 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = asin(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 390:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2830 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = cos(yyvsp[-1].d);      ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 391:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2831 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = acos(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 392:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2832 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = tan(yyvsp[-1].d);      ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 393:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2833 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = atan(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 394:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2834 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = atan2(yyvsp[-3].d, yyvsp[-1].d); ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 395:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2835 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = sinh(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 396:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2836 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = cosh(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 397:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2837 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = tanh(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 398:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2838 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = fabs(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 399:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2839 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = floor(yyvsp[-1].d);    ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 400:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2840 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = ceil(yyvsp[-1].d);     ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 401:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2841 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = fmod(yyvsp[-3].d, yyvsp[-1].d);  ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 402:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2842 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = fmod(yyvsp[-3].d, yyvsp[-1].d);  ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 403:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2843 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 404:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2844 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[-1].d*(double)rand()/(double)RAND_MAX; ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 405:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2853 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = yyvsp[0].d; ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 406:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2854 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = 3.141592653589793; ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 407:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2855 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = ParUtil::Instance()->rank(); ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 408:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2856 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ yyval.d = ParUtil::Instance()->size(); ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 409:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2861 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) {
	yymsg(GERROR, "Unknown variable '%s'", yyvsp[0].c) ;
	yyval.d = 0. ;
      }
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	yyval.d = *(double*)List_Pointer_Fast(pSymbol->val, 0) ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 410:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2872 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      TheSymbol.Name = yyvsp[-3].c ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) {
	yymsg(GERROR, "Unknown variable '%s'", yyvsp[-3].c) ;
	yyval.d = 0. ;
      }
      else{
	if((pd = (double*)List_Pointer_Test(pSymbol->val, (int)yyvsp[-1].d)))
	  yyval.d = *pd ;
	else{
	  yymsg(GERROR, "Uninitialized variable '%s[%d]'", yyvsp[-3].c, (int)yyvsp[-1].d) ;
	  yyval.d = 0. ;
	}
      }
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 411:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2889 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      TheSymbol.Name = yyvsp[-2].c ;
      if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) {
	yymsg(GERROR, "Unknown variable '%s'", yyvsp[-2].c) ;
	yyval.d = 0. ;
      }
      else{
	yyval.d = List_Nbr(pSymbol->val);
      }
    ;
    break;}
case 412:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2901 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      TheSymbol.Name = yyvsp[-1].c ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) {
	yymsg(GERROR, "Unknown variable '%s'", yyvsp[-1].c) ;
	yyval.d = 0. ;
      }
      else
	yyval.d = (*(double*)List_Pointer_Fast(pSymbol->val, 0) += yyvsp[0].i) ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 413:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2912 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      TheSymbol.Name = yyvsp[-4].c ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) {
	yymsg(GERROR, "Unknown variable '%s'", yyvsp[-4].c) ;
	yyval.d = 0. ;
      }
      else{
	if((pd = (double*)List_Pointer_Test(pSymbol->val, (int)yyvsp[-2].d)))
	  yymsg(GERROR, "Uninitialized variable '%s[%d]'", yyvsp[-4].c, (int)yyvsp[-2].d) ;
	  yyval.d = 0. ;
	}
      }
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 414:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2931 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-2].c))){
	yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-2].c);
	yyval.d = 0. ;
      }
	if(!(pNumOpt =  (double (*) (int, int, double))Get_NumberOption(yyvsp[0].c, pNumCat))){
	  yymsg(GERROR, "Unknown numeric option '%s.%s'", yyvsp[-2].c, yyvsp[0].c);
	  yyval.d = 0. ;
	}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 415:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2947 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))){
	yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-5].c);
	yyval.d = 0. ;
      }
	if(!(pNumOpt =  (double (*) (int, int, double))Get_NumberOption(yyvsp[0].c, pNumCat))){
	  yymsg(GERROR, "Unknown numeric option '%s[%d].%s'", yyvsp[-5].c, (int)yyvsp[-3].d, yyvsp[0].c);
	  yyval.d = 0. ;
	else
	  yyval.d = pNumOpt((int)yyvsp[-3].d, GMSH_GET, 0);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 416:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2963 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-3].c))){
	yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-3].c);
	yyval.d = 0. ;
      }
	if(!(pNumOpt =  (double (*) (int, int, double))Get_NumberOption(yyvsp[-1].c, pNumCat))){
	  yymsg(GERROR, "Unknown numeric option '%s.%s'", yyvsp[-3].c, yyvsp[-1].c);
	  yyval.d = 0. ;
	}
	else
	  yyval.d = pNumOpt(0, GMSH_SET|GMSH_GUI, pNumOpt(0, GMSH_GET, 0)+yyvsp[0].i);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 417:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2979 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-6].c))){
	yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-6].c);
	yyval.d = 0. ;
      }
	if(!(pNumOpt =  (double (*) (int, int, double))Get_NumberOption(yyvsp[-1].c, pNumCat))){
	  yymsg(GERROR, "Unknown numeric option '%s[%d].%s'", yyvsp[-6].c, (int)yyvsp[-4].d, yyvsp[-1].c);
	  yyval.d = 0. ;
	else
	  yyval.d = pNumOpt((int)yyvsp[-4].d, GMSH_SET|GMSH_GUI, pNumOpt((int)yyvsp[-4].d, GMSH_GET, 0)+yyvsp[0].i);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 418:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 2997 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      memcpy(yyval.v, yyvsp[0].v, 5*sizeof(double)) ;
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 419:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3001 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      for(i = 0; i < 5; i++) yyval.v[i] = -yyvsp[0].v[i] ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 420:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3005 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ 
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      for(i = 0; i < 5; i++) yyval.v[i] = yyvsp[0].v[i];
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 421:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3009 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ 
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      for(i = 0; i < 5; i++) yyval.v[i] = yyvsp[-2].v[i] - yyvsp[0].v[i] ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 422:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3013 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      for(i = 0; i < 5; i++) yyval.v[i] = yyvsp[-2].v[i] + yyvsp[0].v[i] ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 423:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3020 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ 
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      yyval.v[0] = yyvsp[-9].d;  yyval.v[1] = yyvsp[-7].d;  yyval.v[2] = yyvsp[-5].d;  yyval.v[3] = yyvsp[-3].d; yyval.v[4] = yyvsp[-1].d;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 424:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3024 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ 
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      yyval.v[0] = yyvsp[-7].d;  yyval.v[1] = yyvsp[-5].d;  yyval.v[2] = yyvsp[-3].d;  yyval.v[3] = yyvsp[-1].d; yyval.v[4] = 1.0;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 425:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3028 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      yyval.v[0] = yyvsp[-5].d;  yyval.v[1] = yyvsp[-3].d;  yyval.v[2] = yyvsp[-1].d;  yyval.v[3] = 0.0; yyval.v[4] = 1.0;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 426:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3032 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      yyval.v[0] = yyvsp[-5].d;  yyval.v[1] = yyvsp[-3].d;  yyval.v[2] = yyvsp[-1].d;  yyval.v[3] = 0.0; yyval.v[4] = 1.0;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 427:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3039 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 428:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3042 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 429:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3048 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 430:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3051 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 431:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3057 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 432:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3060 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
       yyval.l = yyvsp[-1].l;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 433:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3064 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
       yyval.l = yyvsp[-1].l;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 434:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3071 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      yyval.l = List_Create(2, 1, sizeof(List_T*)) ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      List_Add(yyval.l, &(yyvsp[0].l)) ;
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 435:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3076 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      List_Add(yyval.l, &(yyvsp[0].l)) ;
    ;
    break;}
case 436:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3084 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      yyval.l = List_Create(2, 1, sizeof(double)) ;
      List_Add(yyval.l, &(yyvsp[0].d)) ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 437:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3089 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      yyval.l = yyvsp[0].l ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 438:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3093 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      yyval.l = yyvsp[-1].l;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 439:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3097 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      yyval.l = yyvsp[-1].l;
      for(i = 0; i < List_Nbr(yyval.l); i++){
Christophe Geuzaine's avatar
Christophe Geuzaine committed
	pd = (double*)List_Pointer(yyval.l, i);
	(*pd) = - (*pd);
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 440:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3108 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{ 
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      yyval.l = List_Create(2, 1, sizeof(double)) ; 
      for(d = yyvsp[-2].d; (yyvsp[-2].d < yyvsp[0].d) ? (d <= yyvsp[0].d) : (d >= yyvsp[0].d); (yyvsp[-2].d < yyvsp[0].d) ? (d += 1.) : (d -= 1.)) 
	List_Add(yyval.l, &d) ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 441:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3114 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
      yyval.l = List_Create(2, 1, sizeof(double)) ; 
      if(!yyvsp[0].d || (yyvsp[-4].d < yyvsp[-2].d && yyvsp[0].d < 0) || (yyvsp[-4].d > yyvsp[-2].d && yyvsp[0].d > 0)){
        yymsg(GERROR, "Wrong increment in '%g:%g:%g'", yyvsp[-4].d, yyvsp[-2].d, yyvsp[0].d) ;
	List_Add(yyval.l, &(yyvsp[-4].d)) ;
      }
      else
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
	for(d = yyvsp[-4].d; (yyvsp[0].d > 0) ? (d <= yyvsp[-2].d) : (d >= yyvsp[-2].d); d += yyvsp[0].d)
	  List_Add(yyval.l, &d) ;
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
   ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 442:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3125 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      // Returns the coordinates of a point and fills a list with it.
      // This allows to ensure e.g. that relative point positions are
      // always conserved
      Vertex *v = FindPoint((int)yyvsp[-1].d, THEM);
      yyval.l = List_Create(3, 1, sizeof(double)) ;      
      if(!v) {
	yymsg(GERROR, "Unknown point '%d'", (int) yyvsp[-1].d) ;
	double d = 0.0 ;
	List_Add(yyval.l, &d);
	List_Add(yyval.l, &d);
	List_Add(yyval.l, &d);
      }
      else{
	List_Add(yyval.l, &v->Pos.X) ;
	List_Add(yyval.l, &v->Pos.Y) ;
	List_Add(yyval.l, &v->Pos.Z) ;
      }
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 443:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3145 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      yyval.l = List_Create(List_Nbr(yyvsp[0].l), 1, sizeof(double)) ;
      for(int i = 0; i < List_Nbr(yyvsp[0].l); i++){
	Shape *s = (Shape*) List_Pointer(yyvsp[0].l, i);
	double d = s->Num;
	List_Add(yyval.l, &d);
      }
    ;
    break;}
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
case 444:
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
#line 3154 "Gmsh.y"
Christophe Geuzaine's avatar
 
Christophe Geuzaine committed
{
      yyval.l = List_Create(List_Nbr(yyvsp[0].l), 1, sizeof(double)) ;
      for(int i = 0; i < List_Nbr(yyvsp[0].l); i++){