Beispiel #1
0
#        r0 *= self.getFactor()*2.0*np.pi*self.x_[0]/self.material.mu0
#        r1 = -self.N_[i]*self.u_[0]*0.5
#        r1 *= self.getFactor()
#        R[0] += r0
#        R[1] += r1

Ndof = 2
tOrder = 1
Ng = [3, 3]
totalTime = 1.0e-3
numberTimeSteps = 100
rho_inf = 0.9
tol = 1.0e-8
load = 355.0 / 0.015 / 0.01

intDat = idat.GaussianQuadrature(Ng, 2, idat.Gaussian1D)

intDatB = idat.GaussianQuadrature(3, 1, idat.Gaussian1D)
#intSingDat = idat.GaussianQuadrature(3, 1, idat.Gaussian1D)

# converged solution only with special Gaussian quadrature
intSingDat = SI.SingularGaussian1D(12, intDatB.xg,\
SI.Gaussian_1D_Pn_Log, SI.Gaussian_1D_Pn_Log_Rat)
#intSingDat = None


def readInput(filename, nodeOrder, timeOrder, intData, Ndof=1):
    mesh = FM.MeshWithBoundaryElement()
    file = open(filename, 'r')
    int(file.readline().split()[1])
    nnode = int(file.readline().split()[1])
Beispiel #2
0
            elements[-1].append(nodes[ie])

    if bnd != 0:
        belms = []
        for e in belm:
            belms.append([])
            for ie in e:
                belms[-1].append(nodes[ie])
        return elements, belms

    return elements, None


nodeOrder = [[0, 1, 2, 0, 1, 2, 0, 1, 2], [0, 0, 0, 1, 1, 1, 2, 2, 2]]

intDat = idat.GaussianQuadrature(Ng, 2, idat.Gaussian1D)


def loadfuncA(x, t):
    return load * math.cos(60.0 * 2 * np.pi * t)


#    return load
def loadfuncAm(x, t):
    return -load * math.cos(60.0 * 2 * np.pi * t)


#    return -load


def loadfuncB(x, t):