Faits:
A.
Le 18 mai 2011, A._ a déposé plainte pénale pour diffamation, calomnie, lésions corporelles simples et violation du secret professionnel contre le Dr B._. Ce dernier l'avait examinée le 16 août 2010 à la demande de son assureur, et avait rendu un rapport médical défavorable à l'intéressée. Le 9 novembre 2010, le Dr B._ avait envoyé un courriel à l'assureur et à un autre médecin dans lequel il prétendait que la patiente avait fait des pressions afin qu'il modifie son rapport et avait déposé des lettres anonymes contenant des menaces et des insultes à caractère raciste. La plaignante, qui déclarait avoir pris connaissance de ce courriel le 16 mars 2011, contestait avoir fait pression sur le médecin et lui avoir envoyé des lettres.
B.
Par ordonnance du 12 mars 2012, après avoir fait entendre l'intéressé par la police judiciaire, le Ministère public a refusé d'entrer en matière. Les informations figurant dans le courriel du 9 novembre 2010 n'étaient pas couvertes par le secret médical. Le médecin avait de bonne foi attribué à la plaignante les lettres anonymes qu'il avait reçues, compte tenu du conflit existant après la consultation du 16 août 2010, du contenu des lettres (rappelant les propos tenus à l'issue de la consultation) et de l'absence de tout autre conflit professionnel ou personnel.
C.
Par arrêt du 15 mai 2012, la Chambre pénale de recours de la Cour de justice du canton de Genève a confirmé cette décision. Le fait de charger la police d'entendre la personne mise en cause n'équivalait pas à l'ouverture d'une instruction. Les propos contenus dans le courriel litigieux se rapportaient à des faits survenus en dehors de la consultation du 16 août 2010. Compte tenu des relations houleuses ayant fait suite à cette consultation, le médecin pouvait de bonne foi penser que les deux messages anonymes provenaient de la plaignante; les menaces avaient cessé après septembre 2010, alors que l'assureur avait alors donné raison à la plaignante.
D.
A._ forme un recours en matière pénale, ainsi qu'un "recours subsidiaire de droit public". Elle demande au Tribunal fédéral d'annuler l'arrêt cantonal et d'inviter le Ministère public à poursuivre l'instruction.
La Chambre pénale de recours persiste dans les termes de son arrêt. Le Ministère public conclut au rejet du recours. B._ conclut à l'irrecevabilité, subsidiairement au rejet du recours.
La recourante a déposé de nouvelles déterminations, persistant dans ses conclusions et précisant que le recours subsidiaire est un recours constitutionnel. B._ a lui aussi persisté dans ses conclusions.

Considérant en droit:
1.
L'arrêt attaqué a été rendu dans le cadre d'une procédure pénale, de sorte que le recours en matière pénale au sens de l'<ref-law> est ouvert. Le recours subsidiaire, par lequel la recourante reprend ses griefs sous un angle constitutionnel, est dès lors irrecevable (<ref-law>).
1.1. S'agissant de la confirmation d'une décision de non-entrée en matière, l'arrêt attaqué a un caractère final (<ref-law>) et émane de l'autorité cantonale de dernière instance (<ref-law>). La recourante a agi en temps utile (<ref-law>).
1.2. Selon l'art. 81 al. 1 let. a et b ch. 5 LTF, la partie plaignante qui a participé à la procédure de dernière instance cantonale est habilitée à recourir au Tribunal fédéral si la décision attaquée peut avoir des effets sur le jugement de ses prétentions civiles. Constituent de telles prétentions celles qui sont fondées sur le droit civil, telles les prétentions en réparation du dommage et du tort moral au sens des <ref-law>. Contrairement à ce que soutient l'intimé, les valeurs litigieuses mentionnées à l'<ref-law> ne s'appliquent pas au recours en matière pénale.
1.2.1. Lorsque, comme en l'espèce, le recours est dirigé contre une décision de non-entrée en matière, il n'est pas nécessaire que la partie plaignante ait déjà pris des conclusions civiles (<ref-ruling> consid. 1.3.1). En revanche, elle doit expliquer dans son mémoire quelles prétentions civiles elle entend faire valoir à moins que, compte tenu notamment de la nature de l'infraction alléguée, l'on puisse déduire directement et sans ambiguïté quelles prétentions civiles pourraient être élevées et en quoi la décision attaquée pourrait influencer négativement leur jugement (<ref-ruling> consid. 2.4 p. 222 et les arrêts cités). Cette exigence vaut particulièrement lorsque la partie plaignante, invoquant une atteinte au droit de la personnalité au sens de l'<ref-law>, prétend obtenir une indemnité pour tort moral fondée sur l'<ref-law>. Cette disposition prévoit que celui qui subit une atteinte illicite à sa personnalité a droit à une somme d'argent à titre de réparation morale, pour autant que la gravité de l'atteinte le justifie et que l'auteur ne lui ait pas donné satisfaction autrement. N'importe quelle atteinte légère à la réputation professionnelle, économique ou sociale d'une personne ne justifie pas une réparation (<ref-ruling> consid. 5.1 p. 704; <ref-ruling> consid. 3a p. 75). L'allocation d'une indemnité pour tort moral fondée sur l'<ref-law> suppose en effet que l'atteinte ait une certaine gravité objective et qu'elle ait été ressentie par la victime, subjectivement, comme une souffrance morale suffisamment forte pour qu'il apparaisse légitime qu'une personne, dans ces circonstances, s'adresse au juge pour obtenir réparation (cf. <ref-ruling> consid. 12.1 p. 29; arrêts 1B_312/2011 du 21 juin 2011; 1B_119/2011 du 20 avril 2011 consid. 1.2.3 et les arrêts cités).
1.3. En l'occurrence, la recourante a déclaré, dans sa plainte avec constitution de partie plaignante, qu'elle réclamait le versement de 10'000 fr. à titre de réparation du tort moral. Elle réservait le dommage économique, sans toutefois rien préciser à ce sujet. Si elle a ainsi chiffré une partie de ses prétentions, elle n'explique pas en revanche que le préjudice moral qu'elle prétend avoir subi présenterait une importance suffisante pour justifier une telle indemnisation. S'il est indéniable que l'accusation d'être l'auteur de lettres anonymes et d'insultes est susceptible de constituer une atteinte à l'honneur, il est peu probable qu'il en soit résulté ici une souffrance morale suffisamment forte pour justifier une indemnisation.
La recevabilité du recours - s'agissant des griefs de fond - apparaît ainsi douteuse. Cette question (de même que celle de l'application de l'art. 81 al. 1 let. b ch. 6 LTF relatif au droit de porter plainte) peut toutefois demeurer indécise, car le recours doit de toute façon être rejeté.
2.
La recourante estime que le Ministère public ne pouvait rendre une décision de non-entrée en matière au sens de l'<ref-law>, dès lors qu'il avait demandé un complément d'information à la police et avait procédé à l'audition de l'intéressé en qualité de prévenu. Le Ministère public ne pouvait procéder que par la voie du classement, en fixant préalablement aux parties un délai pour présenter leurs réquisitions de preuves (<ref-law>).
2.1. Selon l'<ref-law>, le ministère public ouvre une instruction, notamment, lorsqu'il ressort du rapport de police, des dénonciations ou de ses propres constatations des soupçons suffisants laissant présumer qu'une infraction a été commise (let. a). Il peut renvoyer à la police, pour complément d'enquête, les rapports et les dénonciations qui n'établissent pas clairement les soupçons retenus (al. 2). Il renonce à ouvrir une instruction lorsqu'il rend immédiatement une ordonnance de non-entrée en matière ou une ordonnance pénale (al. 4).
Une ordonnance de non-entrée en matière, au sens de l'<ref-law>, est rendue immédiatement par le ministère public lorsqu'il apparaît notamment, à réception de la plainte ou après une procédure préliminaire limitée aux investigations de la police (art. 300 al. 1 et 306 s. CPP), que les éléments constitutifs de l'infraction ou les conditions à l'ouverture de l'action pénale ne sont manifestement pas réunis (al. 1 let. a), qu'il existe des empêchements de procéder (let. b) ou qu'il y a lieu de renoncer à l'ouverture d'une poursuite pénale pour des motifs d'opportunité (let. c). Le ministère public ne peut donc pas rendre une telle ordonnance après avoir ouvert une instruction au sens de l'<ref-law> ( CORNU, Commentaire romand CPP, n° 2 ad art. 310).
2.2. Contrairement à ce que soutient la recourante, le ministère public peut procéder à certaines vérifications avant de refuser d'entrer en matière. Il peut demander des compléments d'enquête à la police, non seulement lorsqu'il s'agit de compléter un précédent rapport au sens de l'<ref-law>, mais aussi lorsque la dénonciation elle-même apparaît insuffisante (arrêt 1B_67/2012 du 29 mai 2012; CORNU, op. cit. n° 20 ad art. 309). Il ressort également de l'<ref-law> que le ministère public peut procéder à ses propres constatations, par exemple en demandant à la personne mise en cause une simple prise de position. Il ne peut en revanche ordonner des mesures de contrainte sans ouvrir une instruction (<ref-law>).
2.3. En l'espèce, le Ministère public a informé la recourante, le 12 octobre 2011, que la procédure était en phase d'investigation policière. Le 3 octobre 2011 en effet, le Ministère public avait transmis le dossier au Chef de la police pour audition de B._ "en qualité de prévenu". Cette dernière mention apparaît toutefois résulter d'une erreur, car l'avis de transmission se fonde clairement sur l'<ref-law>. En exécution de cette mission, la police a entendu l'intéressé le 3 janvier 2012 en qualité de prévenu; un formulaire sur les droits et obligations lui a été remis, ce qui paraît procéder de la même erreur. Dans sa réponse au recours cantonal, le Procureur confirme qu'il s'est contenté de demander à la police un complément d'enquête au sens de l'<ref-law>.
Quoiqu'il en soit, il ressort du dossier qu'aucune décision formelle d'ouverture d'une instruction n'a été prise par le Ministère public avec la mention du prévenu et des infractions qui lui sont imputées, comme le prévoit l'<ref-law>. Aucune mesure de contrainte n'a par ailleurs été ordonnée.
La cour cantonale pouvait dès lors considérer que la procédure n'avait pas dépassé le stade des premières investigations, ce qui permettait au Ministère public de rendre une ordonnance de non-entrée en matière. Le grief doit être écarté. Il en va de même du grief relatif à l'<ref-law> (droit du plaignant de présenter des réquisitions), cette disposition ne s'appliquant qu'à l'issue d'une instruction proprement dite.
3.
Invoquant l'<ref-law>, la recourante reproche à la cour cantonale d'avoir tenu sa plainte pour tardive. En réalité, la plainte a été déclarée tardive uniquement en ce qui concerne les circonstances de la consultation médicale du 16 août 2010. La recourante précise que sa plainte ne portait nullement sur ces faits, mais uniquement sur les accusations figurant dans l'e-mail du 16 mars 2011. Or, la plainte n'a pas été considérée comme tardive sur ce point. Le consid. 5.2 de l'arrêt attaqué ne se rapporte d'ailleurs pas au fond de la cause, mais uniquement à la question des frais de défense, sur laquelle la recourante ne revient pas dans le présent recours. Le grief doit par conséquent être écarté.
4.
La recourante conteste les motifs retenus par la cour cantonale pour confirmer la décision de non-entrée en matière. Les circonstances de la consultation du 16 août 2010 n'autorisaient pas le médecin à penser que la recourante était l'auteur des messages anonymes. La recourante n'avait pas demandé de contre-expertise et avait d'ailleurs obtenu gain de cause auprès de son assureur. Aucun élément de preuve ne permettait de retenir la bonne foi du médecin; celui-ci prétendait que les insultes figurant dans les messages anonymes étaient comparables à celles proférées par la recourante à l'issue de la consultation. Or, il ne s'était pas plaint, dans son rapport ou sa lettre du 30 août 2010, d'avoir été insulté de la sorte.
4.1. Le principe "in dubio pro duriore" découle du principe de la légalité (art. 5 al. 1 Cst. et 2 al. 2 CPP en relation avec les art. 319 al. 1 et 324 CPP; <ref-ruling> consid. 4.2 p. 91). Il signifie qu'en principe, un classement ou une non-entrée en matière ne peuvent être prononcés par le ministère public que lorsqu'il apparaît clairement que les faits ne sont pas punissables ou que les conditions à la poursuite pénale ne sont pas remplies. Le ministère public et l'autorité de recours disposent, dans ce cadre, d'un pouvoir d'appréciation que le Tribunal fédéral revoit avec retenue. La procédure doit se poursuivre lorsqu'une condamnation apparaît plus vraisemblable qu'un acquittement ou lorsque les probabilités d'acquittement et de condamnation apparaissent équivalentes, en particulier en présence d'une infraction grave (<ref-ruling> consid. 4.1.2 p. 91; 186 consid. 4.1 p. 190; <ref-ruling> consid. 2.5 p. 288).
4.2. Selon l'<ref-law>, l'inculpé n'encourra aucune peine s'il prouve que les allégations qu'il a articulées ou propagées sont conformes à la vérité ou qu'il avait des raisons sérieuses de les tenir de bonne foi pour vraies. La bonne foi ne suffit pas, il faut encore que l'accusé établisse qu'il avait des raisons sérieuses de croire à ce qu'il disait. Un devoir de prudence incombe à celui qui porte atteinte à l'honneur d'autrui. Pour échapper à la sanction pénale, l'accusé de bonne foi doit prouver qu'il a cru à la véracité de ses allégations après avoir fait consciencieusement tout ce que l'on pouvait attendre de lui pour s'assurer de leur exactitude. Pour dire si l'accusé avait des raisons sérieuses de tenir de bonne foi pour vrai ce qu'il a dit, il faut se fonder exclusivement sur les éléments dont il avait connaissance à l'époque de sa déclaration; il n'est pas question de prendre en compte des moyens de preuve découverts ou des faits survenus postérieurement (<ref-ruling> consid. 3b p. 151/152 et les références citées).
4.3. La bonne foi de l'intimé a en l'occurrence été reconnue sur la base de éléments suivants: la consultation s'était mal déroulée, ce que la recourante reconnaissait dans sa plainte en faisant notamment état de questions déplacées. Le médecin était parvenu à la conclusion que le versement de prestations d'assurance ne se justifiait pas. Dans son e-mail du 9 novembre 2010, le médecin revient sur son appréciation du cas et déclare que la recourante aurait "fait des pressions et des menaces incroyables" afin qu'il modifie son appréciation, et qu'elle serait venue à deux reprises déposer des lettres anonymes contenant des menaces et des insultes. Selon le médecin, la recourante avait cessé ses comportements depuis une discussion entre l'intimé et son médecin traitant. La cour cantonale a également considéré que les menaces auraient cessé au mois de septembre, après que l'assurance s'était ralliée à l'avis du médecin traitant. Si, comme le prétend la recourante, celle-ci n'a pas cherché à obtenir une contre-expertise, elle a néanmoins fortement critiqué le déroulement de la consultation ainsi que les conclusions de l'expertise. Dans une lettre à son assureur du 26 août 2010, la recourante se plaignait de l'attitude du médecin, affirmait avoir fini la consultation en larmes et demandait à ne plus avoir affaire à l'intimé. Ce dernier pouvait ainsi légitimement considérer que la recourante nourrissait un fort ressentiment à son égard. Le médecin affirmait par ailleurs avoir reconnu la recourante lors du dépôt des messages, et que ces derniers contenaient des expressions identiques aux propos tenus par la recourante à l'issue de la consultation. Ces affirmations ne peuvent toutefois être prouvées. En revanche, la chronologie des faits (soit le dépôt des messages quelques temps après la consultation litigieuse mais avant la discussion avec le médecin traitant et la décision favorable de l'assureur) pouvait donner à penser que la recourante était l'auteur des messages. La recourante demande une expertise des messages anonymes et diverses auditions, mais ces éléments de preuve n'apparaissent pas propres à remettre en cause la bonne foi de l'intimé.
Sur le vu de ce qui précède, la cour cantonale pouvait, à l'instar du Ministère public, considérer que les chances d'acquittement de l'intimé étaient supérieures à la probabilité d'une condamnation pour diffamation. Il en va de même, a fortiori, de l'accusation de calomnie. La décision de non-entrée en matière apparaît dès lors justifiée.
4.4. S'agissant enfin de la violation alléguée du secret médical, la recourante se contente d'affirmer que les renseignements contenus dans le courriel litigieux seraient couverts par un tel secret. L'argument n'apparaît toutefois pas suffisamment motivé (<ref-law>), dans la mesure où la recourante n'indique pas précisément quels renseignements figurant dans le courriel litigieux relèveraient du secret médical. Au demeurant, le grief apparaît mal fondé. Le médecin a en effet répondu, par son courriel, à une lettre de l'assureur du 3 novembre 2010. Il n'y fait que confirmer les conclusions de son rapport, déjà en mains de l'assureur, et s'exprime sur des éléments qui ne relèvent pas de l'anamnèse ou du diagnostic médical, mais qui ont trait pour l'essentiel à des évènements survenus en dehors de l'expertise.
5.
Sur le vu de ce qui précède, le recours constitutionnel subsidiaire est irrecevable et le recours en matière pénale est rejeté dans la mesure où il est recevable. Conformément aux art. 66 al. 1 et 68 al. 2 LTF, les frais judiciaires sont mis à la charge de la recourante, de même que l'indemnité de dépens allouée à l'intimé, qui obtient gain de cause avec l'assistance d'un mandataire professionnel.

Par ces motifs, le Tribunal fédéral prononce:
1.
Le recours constitutionnel subsidiaire est irrecevable.
2.
Le recours en matière pénale est rejeté dans la mesure où il est recevable.
3.
Une indemnité de dépens de 1'500 fr. est allouée à l'intimé B._, à la charge de la recourante.
4.
Les frais judiciaires, arrêtés à 2'000 fr., sont mis à la charge de la recourante.
5.
Le présent arrêt est communiqué aux mandataires des parties, au Ministère public et à la Cour de justice de la République et canton de Genève, Chambre pénale de recours.
Lausanne, le 4 juin 2013
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Fonjallaz
Le Greffier: Kurz