public void ProcessInternalRhs(ISubdomain subdomain, IVectorView solution, IVector rhs) { rhs.AddIntoThis(qs[subdomain.ID].Multiply(solution)); ScaleSubdomainSolidVector(subdomain, rhs); }
public IVector DiffusionConductivityMatrixVectorProduct(ISubdomain subdomain, IVectorView vector) => this.DiffusionConductivity[subdomain.ID].Multiply(vector);
//TODO: Ok this is weird. These methods should be named Second/First/ZeroOrderCoefficientTimesVector() public IVector StabilizingConductivityMatrixVectorProduct(ISubdomain subdomain, IVectorView vector) => this.StabilizingConductivity[subdomain.ID].Multiply(vector);
public void ProcessInternalRhs(ISubdomain subdomain, IVectorView solution, IVector rhs) { }
public IVector ConductivityMatrixVectorProduct(ISubdomain subdomain, IVectorView vector) { throw new NotImplementedException(); }
public int[] MapFreeDofsSubdomainToGlobal(ISubdomain subdomain) => subdomainToGlobalDofMaps[subdomain];
public IVector MassMatrixVectorProduct(ISubdomain subdomain, IVectorView vector) => this.Mass[subdomain.ID].Multiply(vector);
internal LagrangeMultiplier(INode node, IDofType dof, ISubdomain subdomainPlus, ISubdomain subdomainMinus) { this.Node = node; this.DofType = dof; this.SubdomainPlus = subdomainPlus; this.SubdomainMinus = subdomainMinus; }
public NonLinearSubdomainUpdater(ISubdomain subdomain) { this.subdomain = subdomain; }
public SkylineFeti1SubdomainMatrixManager(ISubdomain subdomain, IReorderingAlgorithm reordering) { this.linearSystem = new SingleSubdomainSystem <SkylineMatrix>(subdomain); this.reordering = reordering; }
public IFeti1SubdomainMatrixManager CreateMatricesManager(ISubdomain subdomain) => new SkylineFeti1SubdomainMatrixManager(subdomain, reordering);
public IVector SecondDerivativeZMatrixVectorProduct(ISubdomain subdomain, IVectorView vector) => this.SecondDerivativeZMatrix[subdomain.ID].Multiply(vector);
public IMatrix GetSecondSpaceDerivatives(ISubdomain subdomain, IVectorView vector) { throw new NotImplementedException(); }
public IMatrixView LinearCombinationOfMatricesIntoStiffness(ImplicitIntegrationCoefficients coefficients, ISubdomain subdomain) { int id = subdomain.ID; return(Capacity[id]); }
public double[] CalcBoundaryDofCoefficients(ISubdomain subdomain) => inverseBoundaryDofMultiplicities[subdomain.ID];
public TotalDisplacementsLog(ISubdomain subdomain, int numWatchedDofs, DofTable watchedDofs) { this.subdomain = subdomain; this.watchedDofs = watchedDofs; this.displacements = new double[numWatchedDofs]; }
public void AddVectorSubdomainToGlobalMeanValue(ISubdomain subdomain, IVectorView subdomainVector, IVector globalVector) => throw new NotImplementedException();
public Factory(ISubdomain subdomain) => this.subdomain = subdomain;
public void ProcessRhs(ImplicitIntegrationCoefficients coefficients, ISubdomain subdomain, IVector rhs) { // Method intentionally left empty. }
public void ReorderDofs(ISubdomain subdomain, ISubdomainFreeDofOrdering originalOrdering) => originalOrdering.ReorderNodeMajor(subdomain.Nodes);
public IVector DampingMatrixVectorProduct(ISubdomain subdomain, IVectorView vector) => this.Damping[subdomain.ID].Multiply(vector);
public void ReorderInternalDofs(Feti1DofSeparator dofSeparator, ISubdomain subdomain) { // Do nothing, since the sparsity pattern is irrelevant for dense matrices. }
public void ProcessRhs(ISubdomain subdomain, IVector rhs) { // Method intentionally left empty. }
public DenseFeti1SubdomainMatrixManager(ISubdomain subdomain) { this.linearSystem = new SingleSubdomainSystem <SkylineMatrix>(subdomain); }
public IVector CapacityMatrixVectorProduct(ISubdomain subdomain, IVectorView vector) => this.Capacity[subdomain.ID].Multiply(vector);
public IFeti1SubdomainMatrixManager CreateMatricesManager(ISubdomain subdomain) => new DenseFeti1SubdomainMatrixManager(subdomain);
public IVector MassTransportConductivityMatrixVectorProduct(ISubdomain subdomain, IVectorView vector) => this.MassTransportConductivity[subdomain.ID].Multiply(vector);
public NonLinearSubdomainUpdaterWithInitialConditions(ISubdomain subdomain) { this.subdomain = subdomain; }
public IVector StabilizingRhs(ISubdomain subdomain) => this.StabilizingDomainLoad[subdomain.ID];
IMatrixView matrixConstrConstr) CalculateSubMatrices(ISubdomain subdomain) { throw new NotImplementedException(); }