delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1994/01/13/08:15:22

Date: Thu, 13 Jan 1994 13:38:42 +0100
Alternate-Recipient: Allowed
From: ESCHN705 AT RZ DOT Braunschweig DOT PTB DOT d400 DOT de
Sender: ESCHN705 AT RZ DOT Braunschweig DOT PTB DOT d400 DOT de
To: djgpp AT sun DOT soe DOT clarkson DOT edu
Subject: test.cc

// Hello!
//
// I'm in some trouble and I'm afraid that it's me who caused it.
// However, I'm not able to understand what's going on.
// djgpp 1.11 (maint1) complains about the lines marked with "?????":
//
// "called object is not a function"
//
// I compiled it with "gcc -Wall test.cc".
//
// Any hints? Thomas
//
//
#include <std.h>
#include <stdio.h>
#include <string.h>
#include <math.h>

typedef enum {  c1,ci,                                   /*  Holoedrie ci   */
                c2,cs,c2h,                               /*  Holoedrie c2h  */
                d2,c2v,d2h,                              /*  Holoedrie d2h  */
                c4,s4,c4h,d4,c4v,d2d,d4h,                /*  Holoedrie d4h  */
                t,th,o,td,oh,                            /*  Holoedrie oh   */
                c3,s6,d3,c3v,d3d,                        /*  Holoedrie d3d  */
                c6,c3h,c6h,d6,c6v,d3h,d6h } PunktGruppe; /*  Holoedrie d6h  */

int         ng(PunktGruppe gb);       /* # of elements of group gb */
PunktGruppe dg(PunktGruppe gb);       /* rot. part of group gb     */
char        *gn(PunktGruppe gb);      /* group name                */

typedef double a33[3][3];

#define msz 24                        /* maximum # of symmetry elements */

typedef struct rstern {
               int      strahlenzahl;
               a33      rmat[msz]; } rstern;

int make_rstar(double      a,
               double      b,
               double      g,
               PunktGruppe gb,
               rstern      *strn);

typedef enum { _001_c4,_001_c2,
               _001_c6,_001_c3,
               _100_c2,_111_c3 } rsym_op;

a33  *frotmat(double alpha, double beta, double gamma);

a33 matrizes[] = {*frotmat(M_PI/2,0,0),
                  *frotmat(M_PI,0,0),
                  *frotmat(M_PI/3,0,0),
                  *frotmat(2*M_PI/3,0,0),
                  *frotmat(0,M_PI,M_PI),
                  *frotmat(0,M_PI/2,M_PI/2)};

int main(void)
{
  int    n, na, nb, ng;
  rstern rstrn;

  for (n = c1; n <= d6h; n++)
    for (na = 0; na < 4; na++)
      for (nb = 0; nb < 3; nb++)
        for (ng = 0; ng < 4; ng++)
        {
          make_rstar(na*M_PI/2,
                     nb*M_PI/2,
                     ng*M_PI/2,
                     dg(PunktGruppe(n)),&rstrn);
          if (ng(dg(PunktGruppe(n))) != rstrn.strahlenzahl) // ?????
            printf("Gruppe %s: %d/%d Elemente (%d/2,%d/2,%d/2)*PI\n",
                    gn(PunktGruppe(n)),
                    ng(dg(PunktGruppe(n))),
                    rstrn.strahlenzahl,                     // ?????
                    na,nb,ng);
        }
  printf("Ansonsten alles o.k.\n");
}


- Raw text -


  webmaster     delorie software   privacy  
  Copyright 2019   by DJ Delorie     Updated Jul 2019