Faits :
A.
Par jugement du 16 janvier 2018, le Tribunal de police de l'arrondissement de l'Est vaudois a notamment constaté que X._ avait réalisé les conditions objectives des infractions de lésions corporelles simples qualifiées, voies de fait, dommages à la propriété, séquestration et contrainte sexuelle, a déclaré l'intéressé pénalement irresponsable desdites infractions et a ordonné une mesure de l'art. 63 CP sous la forme d'un suivi d'un traitement psychiatrique ambulatoire et de la prise d'Abilify ou de tout autre médicament adapté à sa pathologie. Il a en outre reconnu X._ débiteur de A._ de divers montants, mis une partie des frais à la charge de ce dernier et dit qu'il n'y avait pas lieu de l'indemniser au titre de l'art. 429 CPP.
B.
Par jugement du 5 juin 2018, la Cour d'appel pénale du Tribunal cantonal vaudois a partiellement admis l'appel de X._. Elle a réformé le jugement attaqué en ce sens qu'elle a libéré l'appelant de l'accusation de séquestration, a constaté que celui-ci avait réalisé les conditions objectives des infractions de lésions corporelles simples qualifiées, voies de fait, dommages à la propriété et contrainte sexuelle, l'a déclaré pénalement irresponsable des dites infractions et a renoncé à ordonner une mesure de l'art. 63 CP. Pour le surplus, elle a confirmé l'allocation des prétentions civiles à la partie plaignante, a réduit à 6'000 fr. le montant des frais de la procédure de première instance à la charge de l'appelant, a mis une partie des frais de la procédure d'appel à la charge de l'appelant et a confirmé le refus de l'indemnité prévue à l'art. 429 CPP.
C.
Contre ce dernier jugement, X._ dépose un recours en matière pénale devant le Tribunal fédéral. Il conclut, principalement, à la réforme du jugement attaqué en ce sens qu'un montant de 21'000 fr. lui est alloué à titre d'indemnité selon l'art. 429 CPP. A titre subsidiaire, il conclut à l'annulation du jugement attaqué et au renvoi de la cause à la cour cantonale ou au Tribunal de police de l'arrondissement de l'Est vaudois pour complément d'instruction et nouvelle décision dans le sens des considérants.
Invités à se déterminer, la cour cantonale et le ministère public vaudois y ont renoncé.
Considérant en droit :
1.
Le recourant reproche à la cour cantonale d'avoir violé le droit fédéral en lui refusant le droit à une indemnité pour la détention provisoire et les mesures de substitution subies.
1.1. L'art. 429 al. 1 CP prévoit qu'en cas d'acquittement total ou partiel ou d'ordonnance de classement, le prévenu a droit à une indemnité pour les dépenses occasionnées par l'exercice raisonnable de ses droits de procédure (let. a), pour le dommage économique subi au titre de sa participation obligatoire à la procédure pénale (let. b) et pour la réparation du tort moral subi en raison d'une atteinte particulièrement grave à sa personnalité, notamment en cas de privation de liberté (let. c).
1.2. En l'espèce, la cour cantonale a reconnu le recourant pénalement irresponsable de la commission des infractions et a renoncé à prononcer un traitement ambulatoire selon l'art. 63 CP, faute de risque de récidive (jugement attaqué p. 31 s.). Elle a refusé au recourant toute indemnité selon l'art. 429 CPP au motif qu'il n'avait pas été acquitté, mais que seule son irresponsabilité avait été constatée (jugement attaqué p. 34).
1.3. Ce raisonnement ne peut pas être suivi.
Un auteur irresponsable est inapte à la faute et, partant, n'est pas punissable. Il fera l'objet d'un jugement d'acquittement s'il est mis en accusation et que le tribunal arrive à la conclusion qu'il était irresponsable au moment d'agir (pour autant que les conditions à l'ouverture de l'action pénale soient réunies et sous réserve des art. 19 al. 4 et 263 CP; BOMMER/DITTMANN, in Basler Kommentar, Strafrecht I, 3e éd. 2013, n° 44 ad art. 19 CP; TRECHSEL/JEAN-RICHARD, in Trechsel/Pieth [éd.], Schweizerisches Strafgesetzbuch, Praxiskommentar, 3e éd. 2018, n° 11 ad art. 19 CP; cf. art. 261 al. 1 let. a et 419 CPP).
Il s'ensuit que lorsque le prévenu est irresponsable et qu'il est acquitté pour ce motif, l'art. 429 CPP est applicable (SCHMID/JOSITSCH, Handbuch des Schweizerischen Strafprozessrechts, 3e éd. 2017, n° 1809; MIZEL/RÉTORNAZ, in Commentaire romand, Code de procédure pénale suisse, 2011, n° 4 ad art. 429 CPP).
2.
Il convient d'examiner si l'indemnité prévue à l'art. 429 CPP peut, à certaines conditions, être refusée ou réduite.
2.1. En principe, l'art. 430 CPP ne sera pas applicable au prévenu irresponsable. Selon cette disposition, l'autorité pénale peut réduire ou refuser l'indemnité lorsque le prévenu a provoqué illicitement et fautivement l'ouverture de la procédure. Pour que l'indemnité puisse être réduite ou refusée, le comportement du prévenu, qui doit être illicite et fautif (" rechtswidrig und schuldhaft "), doit être à l'origine de l'ouverture de l'enquête pénale ou alors il doit s'agir d'une " faute procédurale ", c'est-à-dire d'un comportement qui a compliqué ou prolongé la procédure (ATF 119 Ia 332; 116 Ia 162; 109 Ia 160 consid. 4b p. 164 concernant la condamnation aux frais). Lorsque le prévenu est irresponsable et partant non fautif, le juge ne pourra donc pas en règle générale prendre en considération le caractère délictueux de son comportement pour réduire ou refuser l'indemnité selon l'art. 429 CPP (cf. MOREILLON/PAREIN-REYMOND, Petit commentaire du code de procédure pénale, 2e éd. 2016, n° 5 ad art. 429 CPP).
2.2.
2.2.1. En matière de frais, l'art. 419 CPP prévoit la possibilité de mettre les frais à la charge du prévenu irresponsable qui fait l'objet d'une ordonnance de classement en raison de son irresponsabilité ou qui a été acquitté pour ce motif si l'équité l'exige au vu de l'ensemble des circonstances. L'application de cette disposition suppose une pesée des intérêts en présence et n'intervient que si la situation financière de l'intéressé est favorable (Message du 21 décembre 2005 du Conseil fédéral relatif à l'unification du droit de la procédure pénale, FF 2006 p. 1308). Il s'agit d'éviter les cas où la libération du paiement des frais de l'auteur serait choquante (JEAN CREVOISIER, in Commentaire romand, Code de procédure pénale, 2011, n° 1 ad art. 419 CPP; JO PITTELOUD, Code de procédure pénale suisse, 2012, n° 1281; SCHMID/JOSITSCH, Schweizerische Strafprozessordnung, Praxiskommentar, 3e éd. 2018, n° 1 ad art. 419 CPP).
2.2.2. Certains auteurs proposent d'appliquer l'art. 419 CPP par analogie à l'indemnité octroyée selon l'art. 429 CPP. Ainsi WEHRENBERG et FRANK admettent qu'une indemnité peut être refusée, outre pour les motifs prévus à l'art. 430 CPP, lorsque le prévenu a été acquitté en raison de son irresponsabilité et que les frais ont été mis à sa charge pour des motifs d'équité (art. 419 CPP) (WEHRENBERG/BERNARD, in Basler Kommentar, Schweizerische Strafprozessordnung, 2e éd. 2014, n° 11 ad art. 429 CPP). JEANNERET ET KUHN partagent également cet avis (JEANNERET/KUHN, Précis de procédure pénale, 2e éd. 2018, n° 5063). Se référant à l'ATF 116 Ia 162 consid. 2b, MOREILLON et PAREIN-REYMOND admettent que, malgré l'irresponsabilité, c'est-à-dire l'incapacité à pouvoir commettre une faute, une demande en indemnité pourrait être réduite ou refusée en application de l'art. 54 CO (MOREILLON/PAREIN-REYMOND, Petit commentaire du Code de procédure pénale, 2e éd. 2016, n° 5 ad art. 429 CPP).
2.3.
2.3.1. Un motif de réduction ou de refus de l'indemnité prévue à l'art. 429 CPP en cas d'irresponsabilité du prévenu ne figure pas dans la loi. Les règles d'interprétation traditionnelles s'appliquent en matière de procédure pénale (cf. MOREILLON/PAREIN-REYMOND, Petit commentaire du Code de procédure pénale, 2e éd. 2016, n° 15 ad art. 2 CPP). Le recours à l'analogie est admis (HAUSER/SCHWERI/HARTMANN, Schweizerisches Strafprozessrecht, 6e éd. 2005, n° 10 ad § 6; ATF 128 IV 272 consid. 2 p. 274). Le juge peut prononcer par analogie selon une disposition légale qui ne s'applique pas directement au cas particulier mais réglemente une situation proche de celle qu'il s'agit de régler. Mais il ne peut le faire qu'en demeurant dans le cadre général du système de la procédure pénale, en adoptant des solutions qui soient en harmonie avec ce système (ATF 98 Ia 226 consid. 4b p. 232 s.).
2.3.2. En cas d'acquittement ou d'ordonnance de classement en raison de l'irresponsabilité du prévenu, le législateur a expressément prévu, à l'art. 419 CPP, la possibilité de mettre les frais à la charge du prévenu irresponsable. Selon la jurisprudence, il doit exister une corrélation entre la prise en charge des frais par le prévenu et l'indemnisation de celui-ci. Ainsi, lorsque le prévenu supporte les frais, une indemnité est en règle générale exclue et, inversement, si l'Etat supporte les frais de la procédure pénale, le prévenu a en principe droit à une indemnité selon l'art. 429 CPP (ATF 137 IV 352 consid. 2.4.2 p. 357). Lorsque la condamnation aux frais n'est que partielle, la réduction de l'indemnité devrait s'opérer dans la même mesure (arrêts 6B_1065/2015 du 15 septembre 2016 consid. 2.2; 6B_256/2016 du 20 juin 2016 consid. 3.3). Compte tenu de cette corrélation, il faut admettre que si le prévenu irresponsable a été condamné aux frais pour des raisons d'équité en application de l'art. 419 CPP, l'indemnité selon l'art. 429 CPP doit pouvoir être refusée. L'application analogique de l'art. 419 CPP s'impose aussi de par la systématique de la loi; l'art. 419 CPP figure dans le chapitre 1 sur les dispositions générales, alors que le chapitre 2 concerne les frais de procédure et le chapitre 3 les indemnités et la réparation du tort moral.
2.4. En l'espèce, le recourant qui a été acquitté en raison de son irresponsabilité a droit à une indemnité selon l'art. 429 CPP (cf. consid. 1 ci-dessus). En conformité avec l'art. 419 CPP, il a été condamné à une partie des frais des procédures de première instance et d'appel, condamnation qu'il n'a pas contestée. En principe, la condamnation aux frais exclut l'allocation d'une indemnité. Dans le présent cas, la condamnation aux frais n'est toutefois que partielle. La cour cantonale doit ainsi allouer au recourant une indemnité selon l'art. 429 CPP, mais peut la réduire dans la même mesure que les frais. En refusant toute indemnité, elle a donc violé le droit fédéral. Le recours doit être admis sur ce point, l'arrêt attaqué, annulé et la cause, renvoyée à la cour cantonale pour qu'elle alloue une indemnité réduite au recourant.
3.
Le recourant qui obtient gain de cause ne supporte pas de frais judiciaires (art. 66 al. 1 LTF) et peut prétendre à une indemnité de dépens à la charge du canton de Vaud (art. 68 al. 1 et 2 LTF).
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est admis, le jugement attaqué est annulé et la cause est renvoyée à l'autorité cantonale pour nouvelle décision.
2.
Il n'est pas perçu de frais judiciaires.
3.
Le canton de Vaud versera au recourant la somme de 3'000 fr. à titre de dépens pour la procédure devant le Tribunal fédéral.
4.
Le présent arrêt est communiqué aux parties et à la Cour d'appel pénale du Tribunal cantonal du canton de Vaud.
Lausanne, le 7 décembre 2018
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Président : Denys
La Greffière : Kistler Vianin