95 char description[13]=
" ",cflag[1]=
" ",*filabl=NULL;
97 ITG calcul_qa,nener=0,ikin,i,j,k,m,iobject,im,symmetryflag=0,inputformat=0,
98 mt=mi[1]+1,mode=-1,noddiam=-1,ngraph=1,idesvar,nea,neb,nodeset,lmax,
99 kscale=1,idir,iorien,network=0,inorm=0,irand=0,*neinset=NULL,
100 nepar,isum,idelta,*neapar=NULL,*nebpar=NULL,nestart,neend,
num_cpus,
103 double sigma=0.,ptime=0.,*temp=NULL,*bfix=NULL,*vnew=NULL,*dstn=NULL,
104 freq,*c=NULL,orabsav[7],rotvec[3],a[9],pgauss[3],*b=NULL,
107 if(*nasym!=0){symmetryflag=2;inputformat=1;}
111 ITG sys_cpus,*ithread=NULL;
112 char *env,*envloc,*envsys;
119 envsys=getenv(
"NUMBER_OF_CPUS");
121 sys_cpus=atoi(envsys);
122 if(sys_cpus<0) sys_cpus=0;
129 if(sys_cpus<1) sys_cpus=1;
134 envloc = getenv(
"CCX_NPROC_RESULTS");
136 num_cpus=atoi(envloc);
139 }
else if(num_cpus>sys_cpus){
147 env = getenv(
"OMP_NUM_THREADS");
150 num_cpus = atoi(env);
153 }
else if(num_cpus>sys_cpus){
160 if((*idisplacement==1)||((*ishapeenergy==1)&&(iperturb[1]==1))){
167 &symmetryflag,&inputformat,&nzs[2]);
169 printf(
"*ERROR in objectivemain_se: the SPOOLES library is not linked\n\n");
173 else if(*isolver==4){
176 sgi_factor(ad,au,adb,aub,&sigma,icol,irow,&neq[1],&nzs[1],token);
178 printf(
"*ERROR in objectivemain_se: the SGI library is not linked\n\n");
182 else if(*isolver==5){
184 tau_factor(ad,&au,adb,aub,&sigma,icol,&irow,&neq[1],&nzs[1]);
186 printf(
"*ERROR in objectivemain_se: the TAUCS library is not linked\n\n");
190 else if(*isolver==7){
193 &symmetryflag,&inputformat,jq,&nzs[2]);
195 printf(
"*ERROR in objectivemain_se: the PARDISO library is not linked\n\n");
204 for(m=0;m<*nobject;m++){
205 if(
strcmp1(&objectset[m*324],
"MASS")==0){
236 if(((*nmethod!=4)&&(*nmethod!=5))||(iperturb[0]>1)){
237 printf(
" Using up to %" ITGFORMAT " cpu(s) for the mass sensitivity.\n\n",
num_cpuse);
256 g0[m]+=
g01[m+j**nobject];
262 for(idesvar=1;idesvar<=*ndesi;idesvar++){
264 nea=istartdesi[idesvar-1];
265 neb=istartdesi[idesvar]-1;
268 ielmat,ielorien,norien,
ntmat1_,matname,mi,
269 thicke,mortar,&nea,&neb,ielprop,prop,distmin,ndesi,nodedesi,
270 nobject,g0,dgdx,&iobject,
xmass1,
271 istartdesi,ialdesi,xdesi,&idesvar));
279 if(ipkon[i]<-1) ipkon[i]=-2-ipkon[i];
282 }
else if(
strcmp1(&objectset[m*324],
"SHAPEENERGY")==0){
302 if(*ne<num_cpus){num_cpuse=*ne;}
else{num_cpuse=
num_cpus;}
304 NNEW(
g01,
double,num_cpuse**nobject);
326 if(((*nmethod!=4)&&(*nmethod!=5))||(iperturb[0]>1)){
327 printf(
" Using up to %" ITGFORMAT " cpu(s) for the shape energy sensitivity.\n\n", num_cpuse);
346 g0[m]+=
g01[m+j**nobject];
352 for(idesvar=1;idesvar<=*ndesi;idesvar++){
354 nea=istartdesi[idesvar-1];
355 neb=istartdesi[idesvar]-1;
358 stx,elcon,nelcon,rhcon,nrhcon,alcon,nalcon,alzero,
359 ielmat,ielorien,norien,orab,
ntmat1_,t0,t1,ithermal,prestr,
360 iprestr,iperturb,iout,vold,
361 nmethod,veold,dtime,time,ttime,plicon,nplicon,plkcon,
362 nplkcon,xstateini,xstiff,xstate,
npmat1_,matname,mi,ielas,
364 springarea,reltime,&calcul_qa,&nener,&ikin,
365 ne0,thicke,emeini,pslavsurf,pmastsurf,mortar,clearini,
366 &nea,&neb,ielprop,prop,distmin,ndesi,nodedesi,
367 nobject,g0,dgdx,&iobject,sti,
xener1,
368 istartdesi,ialdesi,xdesi,&idesvar));
381 else if(*isolver==4){
386 else if(*isolver==5){
391 else if(*isolver==7){
406 if(ipkon[i]<-1) ipkon[i]=-2-ipkon[i];
411 NNEW(vec,
double,*neq);
414 iperturb,mi,nactdof,dgdx,
df,ndesi,&iobject,jqs,
419 }
else if((
strcmp1(&objectset[m*324],
"EIGENFREQUENCY")==0)||
420 (
strcmp1(&objectset[m*324],
"GREEN")==0)){
429 if(!*cyclicsymmetry){
432 mi,nactdofinv,jqs,irows));
436 for(idesvar=0;idesvar<*ndesi;idesvar++){dgdx[idesvar]=-dgdx[idesvar];}
440 mi,nactdofinv,jqs,irows,nk,nzss));
458 nelemload,nload,nodeboun,nboun,ndirboun,ithermal,co,
464 freq=sqrt(d[*iev])/6.283185308;
471 NNEW(bfix,
double,neq[1]);
472 NNEW(b,
double,neq[1]);
473 NNEW(temp,
double,mt**nk);
479 FORTRAN(
op,(neq,&z[*iev*neq[1]],bfix,adb,aub,jq,irow));
490 &symmetryflag,&inputformat,&nzs[2]);
492 printf(
"*ERROR in objectivemain_se: the SPOOLES library is not linked\n\n");
496 else if(*isolver==4){
499 sgi_factor(ad,au,adb,aub,&sigma,icol,irow,&neq[1],&nzs[1],token);
501 printf(
"*ERROR in objectivemain_se: the SGI library is not linked\n\n");
505 else if(*isolver==5){
507 tau_factor(ad,&au,adb,aub,&sigma,icol,&irow,&neq[1],&nzs[1]);
509 printf(
"*ERROR in objectivemain_se: the TAUCS library is not linked\n\n");
513 else if(*isolver==7){
516 &symmetryflag,&inputformat,jq,&nzs[2]);
518 printf(
"*ERROR in objectivemain_se: the PARDISO library is not linked\n\n");
526 for(idesvar=0;idesvar<*ndesi;idesvar++){
531 for(j=0;j<neq[1];j++){
532 b[j]=dgdx[idesvar]*bfix[j];
538 for(j=jqs[idesvar]-1;j<jqs[idesvar+1]-1;j++){
539 b[irows[j]-1]+=
df[j];
551 else if(*isolver==4){
556 else if(*isolver==5){
561 else if(*isolver==7){
570 if(j==*iev)
continue;
571 for(k=0;k<neq[1];k++){
572 c[j]+=z[j*neq[1]+k]*b[k];
574 c[j]/=(d[j]-d[*iev]);
578 if(j==*iev)
continue;
579 for(k=0;k<neq[1];k++){
580 b[k]+=c[j]*z[j*neq[1]+k];
596 frd_sen(co,nk,stn,inum,nmethod,kode,filab,
598 istep,iinc,&mode,&noddiam,description,mi,&ngraph,
599 ne,cs,
set,nset,istartset,iendset,ialset,
600 jobnamec,output,temp,&iobject,objectset,ntrans,
601 inotr,trab,&idesvar,orname,icoordinate,&inorm,
615 else if(*isolver==4){
620 else if(*isolver==5){
625 else if(*isolver==7){
636 }
else if(
strcmp1(&objectset[m*324],
"DISPLACEMENT")==0){
646 nload,nodeboun,nboun,ndirboun,ithermal,co,vold,mi,ielmat));
648 NNEW(b,
double,neq[1]);
649 NNEW(temp,
double,mt**nk);
658 for(i=0;i<*nset;i++){
659 if(
strcmp1(&objectset[m*324+162],
" ")==0)
continue;
660 if(
strcmp2(&objectset[m*324+162],&
set[i*81],81)==0){
666 ialset,nk,&idesvar,&iobject,mi,g0,
670 for(idesvar=0;idesvar<*ndesi;idesvar++){
675 for(j=jqs[idesvar]-1;j<jqs[idesvar+1]-1;j++){
686 else if(*isolver==4){
691 else if(*isolver==5){
696 else if(*isolver==7){
714 frd_sen(co,nk,stn,inum,nmethod,kode,filab,
716 istep,iinc,&mode,&noddiam,description,mi,&ngraph,
717 ne,cs,
set,nset,istartset,iendset,ialset,
718 jobnamec,output,temp,&iobject,objectset,ntrans,
719 inotr,trab,&idesvar,orname,icoordinate,&inorm,
724 ialset,nk,&idesvar,&iobject,mi,nactdof,dgdx,
725 ndesi,nobject,vold,b));
731 }
else if(
strcmp1(&objectset[m*324],
"STRESS")==0){
734 NNEW(filabl,
char,87**nlabel);
735 for(i=0;i<87**nlabel;i++){
strcpy1(&filabl[i],
" ",1);}
744 ipkon,&iobject,ne,neinset,iponoel,inoel,&nepar));
748 if(nepar<num_cpus){num_cpuse=nepar;}
else{num_cpuse=
num_cpus;}
775 if(j==num_cpuse)
break;
777 if(neapar[j]==nepar){
792 if(nebpar[j]==nepar){
811 neend=nebpar[num_cpuse-1]+1;
819 NNEW(v,
double,mt**nk);
820 NNEW(fn,
double,mt**nk);
821 NNEW(stn,
double,6**nk);
823 NNEW(stx,
double,6*mi[0]**ne);
824 NNEW(eei,
double,6*mi[0]**ne);
826 memcpy(&v[0],&vold[0],
sizeof(
double)*mt**nk);
830 resultsstr(co,nk,kon,ipkon,lakon,ne,v,stn,inum,stx,
831 elcon,nelcon,rhcon,nrhcon,alcon,nalcon,alzero,ielmat,
832 ielorien,norien,orab,ntmat_,t0,t1,ithermal,
833 prestr,iprestr,filabl,eme,emn,een,iperturb,
834 f,fn,nactdof,iout,qa,vold,b,nodeboun,
835 ndirboun,xboun,nboun,ipompc,
836 nodempc,coefmpc,labmpc,nmpc,nmethod,cam,&neq[1],veold,accold,
837 bet,gam,dtime,time,ttime,plicon,nplicon,plkcon,nplkcon,
838 xstateini,xstiff,xstate,npmat_,epn,matname,mi,ielas,icmd,
839 ncmat_,nstate_,stiini,vini,ikboun,ilboun,ener,enern,emeini,
840 xstaten,eei,enerini,cocon,ncocon,
set,nset,istartset,iendset,
841 ialset,nprint,prlab,prset,qfx,qfn,trab,inotr,ntrans,fmpc,
842 nelemload,nload,ikmpc,ilmpc,istep,iinc,springarea,
843 reltime,ne0,xforc,nforc,thicke,shcon,nshcon,
844 sideload,xload,xloadold,icfd,inomat,pslavsurf,pmastsurf,
845 mortar,islavact,cdn,islavnode,nslavnode,ntie,clearini,
846 islavsurf,ielprop,prop,energyini,energy,&kscale,
847 &nener,orname,&network,neapar,nebpar);
861 for(i=0;i<*nset;i++){
862 if(
strcmp1(&objectset[m*324+162],
" ")==0)
continue;
863 if(
strcmp2(&objectset[m*324+162],&
set[i*81],81)==0){
869 ialset,nk,&idesvar,&iobject,mi,g0,
870 nobject,stn,objectset));
877 NNEW(b,
double,neq[1]);
878 NNEW(vnew,
double,mt**nk);
880 for(idesvar=0;idesvar<*ndesi;idesvar++){
885 for(j=jqs[idesvar]-1;j<jqs[idesvar+1]-1;j++){
896 else if(*isolver==4){
901 else if(*isolver==5){
906 else if(*isolver==7){
917 for(i=0;i<mt**nk;i++){vnew[i]=vold[i]+(*distmin)*vnew[i];}
921 NNEW(v,
double,mt**nk);
922 NNEW(fn,
double,mt**nk);
923 NNEW(stx,
double,6*mi[0]**ne);
924 NNEW(eei,
double,6*mi[0]**ne);
925 NNEW(dstn,
double,6**nk);
927 memcpy(&v[0],&vnew[0],
sizeof(
double)*mt**nk);
938 memcpy(&orabsav[0],&orab[7*iorien],
sizeof(
double)*7);
947 idir=idesvar-iorien*3;
951 rotvec[idir]+=*distmin;
959 for(i=0;i<6;i++){orab[7*iorien+i]=a[i];}
961 resultsstr(co,nk,kon,ipkon,lakon,ne,v,dstn,inum,stx,
962 elcon,nelcon,rhcon,nrhcon,alcon,nalcon,alzero,ielmat,
963 ielorien,norien,orab,ntmat_,t0,t1,ithermal,
964 prestr,iprestr,filabl,eme,emn,een,iperturb,
965 f,fn,nactdof,iout,qa,vold,b,nodeboun,
966 ndirboun,xboun,nboun,ipompc,
967 nodempc,coefmpc,labmpc,nmpc,nmethod,cam,&neq[1],veold,accold,
968 bet,gam,dtime,time,ttime,plicon,nplicon,plkcon,nplkcon,
969 xstateini,xstiff,xstate,npmat_,epn,matname,mi,ielas,icmd,
970 ncmat_,nstate_,stiini,vini,ikboun,ilboun,ener,enern,emeini,
971 xstaten,eei,enerini,cocon,ncocon,
set,nset,istartset,iendset,
972 ialset,nprint,prlab,prset,qfx,qfn,trab,inotr,ntrans,fmpc,
973 nelemload,nload,ikmpc,ilmpc,istep,iinc,springarea,
974 reltime,ne0,xforc,nforc,thicke,shcon,nshcon,
975 sideload,xload,xloadold,icfd,inomat,pslavsurf,pmastsurf,
976 mortar,islavact,cdn,islavnode,nslavnode,ntie,clearini,
977 islavsurf,ielprop,prop,energyini,energy,&kscale,
978 &nener,orname,&network,neapar,nebpar);
986 for(i=0;i<6**nk;i++){dstn[i]=(dstn[i]-stn[i])/(*distmin);}
991 memcpy(&orab[7*iorien],&orabsav[0],
sizeof(
double)*7);
997 frd_sen(co,nk,dstn,inum,nmethod,kode,filab,
999 istep,iinc,&mode,&noddiam,description,mi,&ngraph,
1000 ne,cs,
set,nset,istartset,iendset,ialset,
1001 jobnamec,output,temp,&iobject,objectset,ntrans,
1002 inotr,trab,&idesvar,orname,icoordinate,&inorm,
1020 for(l=0;l<lmax+1;l++){
1037 idesvar=l*num_cpus+k;
1041 for(j=jqs[idesvar]-1;j<jqs[idesvar+1]-1;j++){
1042 b[k*neq[1]+irows[j]-1]=
df[j];
1052 else if(*isolver==4){
1057 else if(*isolver==5){
1062 else if(*isolver==7){
1073 printf(
" Using up to %" ITGFORMAT " cpu(s) for the stress sensitivity.\n\n", num_cpusd);
1124 if(ipkon[i]<-1) ipkon[i]=-2-ipkon[i];
1130 }
else if(
strcmp1(&objectset[m*324],
"THICKNESS")==0){
1134 ipkon,kon,lakon,
set,nset,istartset,iendset,ialset,
1135 &iobject,nodedesiinv,dgdxglob);
1139 if(*idisplacement==1){
1148 else if(*isolver==4){
1153 else if(*isolver==5){
1158 else if(*isolver==7){
static double * g01
Definition: objectivemain_se.c:42
static double * emeini1
Definition: objectivemain_se.c:42
static ITG * ithermal1
Definition: objectivemain_se.c:29
#define ITGFORMAT
Definition: CalculiX.h:52
void spooles_solve(double *b, ITG *neq)
static ITG nener1
Definition: objectivemain_se.c:29
static ITG * nprint1
Definition: objectivemain_se.c:29
void * objectivemt_mass_dx(ITG *i)
Definition: objectivemain_se.c:1205
static double * pmastsurf1
Definition: objectivemain_se.c:42
static double * xener1
Definition: objectivemain_se.c:47
static double * co1
Definition: objectivemain_se.c:42
subroutine objective_disp_dx(nodeset, istartset, iendset, ialset, nk, idesvarc, iobject, mi, nactdof, dgdx, ndesi, nobject, vold, b)
Definition: objective_disp_dx.f:21
static double * xstateini1
Definition: objectivemain_se.c:42
static ITG * nstate1_
Definition: objectivemain_se.c:29
static ITG * icmd1
Definition: objectivemain_se.c:29
static double * dgdx1
Definition: objectivemain_se.c:42
static double * enerini1
Definition: objectivemain_se.c:42
static double * t01
Definition: objectivemain_se.c:42
static ITG * nmethod1
Definition: objectivemain_se.c:29
static double * coefmpc1
Definition: objectivemain_se.c:47
static double * qfx1
Definition: objectivemain_se.c:47
static ITG * nalcon1
Definition: objectivemain_se.c:29
static double * t11
Definition: objectivemain_se.c:42
static ITG * ielprop1
Definition: objectivemain_se.c:29
int pthread_create(pthread_t *thread_id, const pthread_attr_t *attributes, void *(*thread_function)(void *), void *arguments)
static double * xmass1
Definition: objectivemain_se.c:47
static double * ener1
Definition: objectivemain_se.c:42
ITG strcmp2(const char *s1, const char *s2, ITG length)
Definition: strcmp2.c:24
static ITG * nload1
Definition: objectivemain_se.c:29
subroutine objective_stress(nodeset, istartset, iendset, ialset, nk, idesvarc, iobject, mi, g0, nobject, stn, objectset)
Definition: objective_stress.f:21
static ITG num_cpus
Definition: biosav.c:27
static ITG calcul_qa1
Definition: objectivemain_se.c:29
static ITG * ndesi1
Definition: objectivemain_se.c:29
static double * accold1
Definition: objectivemain_se.c:47
static double * alzero1
Definition: objectivemain_se.c:42
subroutine df(x, u, uprime, rpar, nev)
Definition: subspace.f:133
static ITG neend1
Definition: objectivemain_se.c:29
subroutine objective_disp(nodeset, istartset, iendset, ialset, nk, idesvarc, iobject, mi, g0, nobject, vold)
Definition: objective_disp.f:21
static ITG * ialset1
Definition: objectivemain_se.c:29
static double * xboun1
Definition: objectivemain_se.c:47
subroutine objective_mass_dx(co, kon, ipkon, lakon, nelcon, rhcon, ielmat, ielorien, norien, ntmat_, matname, mi, thicke, mortar, nea, neb, ielprop, prop, distmin, ndesi, nodedesi, nobject, g0, dgdx, iobject, xmass, istartdesi, ialdesi, xdesi, idesvar)
Definition: objective_mass_dx.f:24
void sgi_solve(double *b, ITG token)
subroutine objective_shapeener_tot(ne, kon, ipkon, lakon, fint, vold, iperturb, mi, nactdof, dgdx, df, ndesi, iobject, jqs, irows, vec)
Definition: objective_shapeener_tot.f:22
static double * sti1
Definition: objectivemain_se.c:42
static ITG * ntmat1_
Definition: objectivemain_se.c:29
static double * xdesi1
Definition: objectivemain_se.c:42
static ITG * nplkcon1
Definition: objectivemain_se.c:29
static ITG * islavnode1
Definition: objectivemain_se.c:29
static ITG * nk1
Definition: objectivemain_se.c:29
static double * emn1
Definition: objectivemain_se.c:47
static ITG * ntie1
Definition: objectivemain_se.c:29
subroutine resultsnoddir(nk, v, nactdof, b, ipompc, nodempc, coefmpc, nmpc, mi)
Definition: resultsnoddir.f:21
void thicknessmain(double *co, double *dgdx, ITG *nobject, ITG *nk, ITG *nodedesi, ITG *ndesi, char *objectset, ITG *ipkon, ITG *kon, char *lakon, char *set, ITG *nset, ITG *istartset, ITG *iendset, ITG *ialset, ITG *iobject, ITG *nodedesiinv, double *dgdxglob)
Definition: thicknessmain.c:50
static ITG num_cpusd
Definition: objectivemain_se.c:29
static ITG * ntrans1
Definition: objectivemain_se.c:29
static ITG * ncmat1_
Definition: objectivemain_se.c:29
subroutine rotationvectorinv(c, v)
Definition: rotationvectorinv.f:20
ITG strcpy1(char *s1, const char *s2, ITG length)
Definition: strcpy1.c:24
void FORTRAN(actideacti,(char *set, ITG *nset, ITG *istartset, ITG *iendset, ITG *ialset, char *objectset, ITG *ipkon, ITG *ibject, ITG *ne))
subroutine op(n, x, y, ad, au, jq, irow)
Definition: op.f:26
static double * reltime1
Definition: objectivemain_se.c:42
static double * xloadold1
Definition: objectivemain_se.c:47
static ITG * ielas1
Definition: objectivemain_se.c:29
static double * cdn1
Definition: objectivemain_se.c:47
static double * clearini1
Definition: objectivemain_se.c:42
ITG strcmp1(const char *s1, const char *s2)
Definition: strcmp1.c:24
static double * energy1
Definition: objectivemain_se.c:47
static ITG idesvar1
Definition: objectivemain_se.c:29
static double * plicon1
Definition: objectivemain_se.c:42
static char * prset1
Definition: objectivemain_se.c:26
void pardiso_cleanup(ITG *neq, ITG *symmetryflag)
subroutine actideacti(set, nset, istartset, iendset, ialset, objectset, ipkon, iobject, ne)
Definition: actideacti.f:21
static ITG * isolver1
Definition: objectivemain_se.c:29
static ITG * inomat1
Definition: objectivemain_se.c:29
static ITG * iout1
Definition: objectivemain_se.c:29
static double * time1
Definition: objectivemain_se.c:42
static ITG * ialdesi1
Definition: objectivemain_se.c:29
static ITG * norien1
Definition: objectivemain_se.c:29
static ITG * istartset1
Definition: objectivemain_se.c:29
static ITG * jqs1
Definition: objectivemain_se.c:29
static double * fmpc1
Definition: objectivemain_se.c:47
static ITG * irows1
Definition: objectivemain_se.c:29
ITG getSystemCPUs()
Definition: getSystemCPUs.c:40
#define DMEMSET(a, b, c, d)
Definition: CalculiX.h:45
static ITG kscale1
Definition: objectivemain_se.c:29
static double * plkcon1
Definition: objectivemain_se.c:42
static double * veold1
Definition: objectivemain_se.c:42
static char * sideload1
Definition: objectivemain_se.c:26
subroutine stop()
Definition: stop.f:20
subroutine objective_freq_cs(dgdx, df, vold, ndesi, iobject, mi, nactdofinv, jqs, irows, nk, nzss)
Definition: objective_freq_cs.f:22
subroutine objective_shapeener_dx(co, kon, ipkon, lakon, ne, stx, elcon, nelcon, rhcon, nrhcon, alcon, nalcon, alzero, ielmat, ielorien, norien, orab, ntmat_, t0, t1, ithermal, prestr, iprestr, iperturb, iout, vold, nmethod, veold, dtime, time, ttime, plicon, nplicon, plkcon, nplkcon, xstateini, xstiff, xstate, npmat_, matname, mi, ielas, icmd, ncmat_, nstate_, stiini, vini, ener, enerini, istep, iinc, springarea, reltime, calcul_qa, nener, ikin, ne0, thicke, emeini, pslavsurf, pmastsurf, mortar, clearini, nea, neb, ielprop, prop, distmin, ndesi, nodedesi, nobject, g0, dgdx, iobject, sti, xener, istartdesi, ialdesi, xdesi, idesvar)
Definition: objective_shapeener_dx.f:30
static ITG * npmat1_
Definition: objectivemain_se.c:29
void sgi_cleanup(ITG token)
static double * cam1
Definition: objectivemain_se.c:47
static double * alcon1
Definition: objectivemain_se.c:42
static ITG * istep1
Definition: objectivemain_se.c:29
static double * cocon1
Definition: objectivemain_se.c:47
static ITG * iperturb1
Definition: objectivemain_se.c:29
void sgi_factor(double *ad, double *au, double *adb, double *aub, double *sigma, ITG *icol, ITG *irow, ITG *neq, ITG *nzs, ITG token)
void frd_sen(double *co, ITG *nk, double *dstn, ITG *inum, ITG *nmethod, ITG *kode, char *filab, double *time, ITG *nstate_, ITG *istep, ITG *iinc, ITG *mode, ITG *noddiam, char *description, ITG *mi, ITG *ngraph, ITG *ne, double *cs, char *set, ITG *nset, ITG *istartset, ITG *iendset, ITG *ialset, char *jobnamec, char *output, double *v, ITG *iobject, char *objectset, ITG *ntrans, ITG *inotr, double *trab, ITG *idesvar, char *orname, ITG *icoordinate, ITG *inorm, ITG *irand)
Definition: frd_sen.c:27
static ITG ikin1
Definition: objectivemain_se.c:29
static ITG * ikmpc1
Definition: objectivemain_se.c:29
void pardiso_factor(double *ad, double *au, double *adb, double *aub, double *sigma, ITG *icol, ITG *irow, ITG *neq, ITG *nzs, ITG *symmetryflag, ITG *inputformat, ITG *jq, ITG *nzs3)
static char * objectset1
Definition: objectivemain_se.c:26
static double * b1
Definition: objectivemain_se.c:47
static ITG nodeset1
Definition: objectivemain_se.c:29
static double * prestr1
Definition: objectivemain_se.c:42
subroutine objective_freq(dgdx, df, vold, ndesi, iobject, mi, nactdofinv, jqs, irows)
Definition: objective_freq.f:22
static double * een1
Definition: objectivemain_se.c:47
static double * xload1
Definition: objectivemain_se.c:47
static double * bet1
Definition: objectivemain_se.c:47
static double * ttime1
Definition: objectivemain_se.c:42
static double * enern1
Definition: objectivemain_se.c:47
static double * v1
Definition: objectivemain_se.c:42
static double * rhcon1
Definition: objectivemain_se.c:42
static double * orab1
Definition: objectivemain_se.c:42
static double * stiini1
Definition: objectivemain_se.c:42
static ITG * kon1
Definition: objectivemain_se.c:29
static char * set1
Definition: objectivemain_se.c:26
static ITG * nobject1
Definition: objectivemain_se.c:29
#define SFREE(a)
Definition: CalculiX.h:41
static char * orname1
Definition: objectivemain_se.c:26
static ITG * mi1
Definition: objectivemain_se.c:29
static double * stx1
Definition: objectivemain_se.c:42
static double * dtime1
Definition: objectivemain_se.c:42
static ITG * nplicon1
Definition: objectivemain_se.c:29
static ITG network1
Definition: objectivemain_se.c:29
static double * pslavsurf1
Definition: objectivemain_se.c:42
static ITG * ne1
Definition: objectivemain_se.c:29
static ITG * ilboun1
Definition: objectivemain_se.c:29
static double * trab1
Definition: objectivemain_se.c:47
static double * xstaten1
Definition: objectivemain_se.c:47
static ITG * iendset1
Definition: objectivemain_se.c:29
void resultsstr(double *co, ITG *nk, ITG *kon, ITG *ipkon, char *lakon, ITG *ne, double *v, double *stn, ITG *inum, double *stx, double *elcon, ITG *nelcon, double *rhcon, ITG *nrhcon, double *alcon, ITG *nalcon, double *alzero, ITG *ielmat, ITG *ielorien, ITG *norien, double *orab, ITG *ntmat_, double *t0, double *t1, ITG *ithermal, double *prestr, ITG *iprestr, char *filab, double *eme, double *emn, double *een, ITG *iperturb, double *f, double *fn, ITG *nactdof, ITG *iout, double *qa, double *vold, double *b, ITG *nodeboun, ITG *ndirboun, double *xboun, ITG *nboun, ITG *ipompc, ITG *nodempc, double *coefmpc, char *labmpc, ITG *nmpc, ITG *nmethod, double *vmax, ITG *neq, double *veold, double *accold, double *beta, double *gamma, double *dtime, double *time, double *ttime, double *plicon, ITG *nplicon, double *plkcon, ITG *nplkcon, double *xstateini, double *xstiff, double *xstate, ITG *npmat_, double *epl, char *matname, ITG *mi, ITG *ielas, ITG *icmd, ITG *ncmat_, ITG *nstate_, double *stiini, double *vini, ITG *ikboun, ITG *ilboun, double *ener, double *enern, double *emeini, double *xstaten, double *eei, double *enerini, double *cocon, ITG *ncocon, char *set, ITG *nset, ITG *istartset, ITG *iendset, ITG *ialset, ITG *nprint, char *prlab, char *prset, double *qfx, double *qfn, double *trab, ITG *inotr, ITG *ntrans, double *fmpc, ITG *nelemload, ITG *nload, ITG *ikmpc, ITG *ilmpc, ITG *istep, ITG *iinc, double *springarea, double *reltime, ITG *ne0, double *xforc, ITG *nforc, double *thicke, double *shcon, ITG *nshcon, char *sideload, double *xload, double *xloadold, ITG *icfd, ITG *inomat, double *pslavsurf, double *pmastsurf, ITG *mortar, ITG *islavact, double *cdn, ITG *islavnode, ITG *nslavnode, ITG *ntie, double *clearini, ITG *islavsurf, ITG *ielprop, double *prop, double *energyini, double *energy, ITG *kscale, ITG *nener, char *orname, ITG *network, ITG *neapar, ITG *nebpar)
Definition: resultsstr.c:40
static ITG * neq1
Definition: objectivemain_se.c:29
static ITG * nboun1
Definition: objectivemain_se.c:29
static double * f1
Definition: objectivemain_se.c:47
subroutine writedeigdx(iev, d, ndesi, orname, dgdx)
Definition: writedeigdx.f:20
void * stress_senmt(ITG *i)
Definition: objectivemain_se.c:1231
static ITG * ielmat1
Definition: objectivemain_se.c:29
static ITG * nasym1
Definition: objectivemain_se.c:29
static ITG * nshcon1
Definition: objectivemain_se.c:29
static double * vold1
Definition: objectivemain_se.c:42
static double * distmin1
Definition: objectivemain_se.c:42
static ITG * ikboun1
Definition: objectivemain_se.c:29
static ITG * iinc1
Definition: objectivemain_se.c:29
static double * xforc1
Definition: objectivemain_se.c:47
static ITG * icfd1
Definition: objectivemain_se.c:29
static double * eei1
Definition: objectivemain_se.c:42
static ITG * nmpc1
Definition: objectivemain_se.c:29
static ITG * nodempc1
Definition: objectivemain_se.c:29
static char * labmpc1
Definition: objectivemain_se.c:26
static ITG * nforc1
Definition: objectivemain_se.c:29
static double * qfn1
Definition: objectivemain_se.c:47
static char * lakon1
Definition: objectivemain_se.c:26
void tau_solve(double *b, ITG *neq)
static ITG * mortar1
Definition: objectivemain_se.c:29
subroutine createinum(ipkon, inum, kon, lakon, nk, ne, cflag, nelemload, nload, nodeboun, nboun, ndirboun, ithermal, co, vold, mi, ielmat)
Definition: createinum.f:21
void spooles_factor(double *ad, double *au, double *adb, double *aub, double *sigma, ITG *icol, ITG *irow, ITG *neq, ITG *nzs, ITG *symmetryflag, ITG *inputformat, ITG *nzs3)
static ITG * ndirboun1
Definition: objectivemain_se.c:29
static ITG * islavact1
Definition: objectivemain_se.c:29
static double * elcon1
Definition: objectivemain_se.c:42
int pthread_join(pthread_t thread, void **status_ptr)
static ITG * nelcon1
Definition: objectivemain_se.c:29
static ITG * ne01
Definition: objectivemain_se.c:29
static ITG * ncocon1
Definition: objectivemain_se.c:29
static double * epn1
Definition: objectivemain_se.c:47
static ITG * nslavnode1
Definition: objectivemain_se.c:29
static ITG * ilmpc1
Definition: objectivemain_se.c:29
static ITG * inotr1
Definition: objectivemain_se.c:29
static ITG * nodeboun1
Definition: objectivemain_se.c:29
static double * vini1
Definition: objectivemain_se.c:42
static ITG * nactdof1
Definition: objectivemain_se.c:29
static ITG * iprestr1
Definition: objectivemain_se.c:29
#define ITG
Definition: CalculiX.h:51
static ITG nestart1
Definition: objectivemain_se.c:29
static ITG * istartdesi1
Definition: objectivemain_se.c:29
static double * prop1
Definition: objectivemain_se.c:42
static double * thicke1
Definition: objectivemain_se.c:42
static double * energyini1
Definition: objectivemain_se.c:47
static ITG * islavsurf1
Definition: objectivemain_se.c:29
static char * matname1
Definition: objectivemain_se.c:26
void tau_factor(double *ad, double **aup, double *adb, double *aub, double *sigma, ITG *icol, ITG **irowp, ITG *neq, ITG *nzs)
void pardiso_solve(double *b, ITG *neq, ITG *symmetryflag)
static ITG * ielorien1
Definition: objectivemain_se.c:29
static char * filabl1
Definition: objectivemain_se.c:26
static double * xstiff1
Definition: objectivemain_se.c:42
subroutine rotationvector(a, v)
Definition: rotationvector.f:20
#define NNEW(a, b, c)
Definition: CalculiX.h:39
static ITG * nset1
Definition: objectivemain_se.c:29
static ITG iobject1
Definition: objectivemain_se.c:29
static ITG * nelemload1
Definition: objectivemain_se.c:29
static ITG num_cpuse
Definition: objectivemain_se.c:29
static double * shcon1
Definition: objectivemain_se.c:47
static double * gam1
Definition: objectivemain_se.c:47
static double * stn1
Definition: objectivemain_se.c:47
static double * xstate1
Definition: objectivemain_se.c:42
static double * springarea1
Definition: objectivemain_se.c:42
static ITG * nrhcon1
Definition: objectivemain_se.c:29
subroutine actideactistr(set, nset, istartset, iendset, ialset, objectset, ipkon, iobject, ne, neinset, iponoel, inoel, nepar)
Definition: actideactistr.f:22
static ITG * ipompc1
Definition: objectivemain_se.c:29
static ITG * nodedesi1
Definition: objectivemain_se.c:29
void * objectivemt_shapeener_dx(ITG *i)
Definition: objectivemain_se.c:1173
static char * prlab1
Definition: objectivemain_se.c:26
static ITG * ipkon1
Definition: objectivemain_se.c:29