Hvis vi vil sætte tænderne i saftige tomater og samtidig bevare en god
klima-samvittighed, skal vi gå langt udenom tomater, som har groet i
drivhuse.
– Når tomaten avles på åben mark, udleder produktionen i gennemsnit 80 kg
CO2 pr. ton. Hvis tomaterne avles i drivhus, udleder de helt op
til 700 kg CO2 pr. ton. Vi taler om en faktor 5-10, understreger
professor Gang Liu fra Institut for Grøn Teknologi.
I forskningsprojektet ”Mapping the EU tomato supply chain from farm to fork
for greenhouse gas emission mitigation strategies” har Gang Liu været med
til at kortlægge tomatens forsyningskæde og klimaaftryk. Forskerne har
afdækket hele tomatens lange vej, fra den gror på gården, til den havner på
gaflen:
- System.Web.HttpUnhandledException (0x80004005): An unhandled exception occurred. ---> System.Web.HttpCompileException (0x80004005): c:\home\site\wwwroot\Views\Article\ArticleQuote.cshtml(17): error CS1061: 'Cabana.SDU.Feature.Article.ArticleQuote' does not contain a definition for 'Text' and no extension method 'Text' accepting a first argument of type 'Cabana.SDU.Feature.Article.ArticleQuote' could be found (are you missing a using directive or an assembly reference?)
- at System.Web.Compilation.BuildManager.PostProcessFoundBuildResult(BuildResult result, Boolean keyFromVPP, VirtualPath virtualPath)
- at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult)
- at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)
- at System.Web.Compilation.BuildManager.GetBuildResultFromCacheInternal(String cacheKey, Boolean keyFromVPP, VirtualPath virtualPath, Int64 hashCode, Boolean ensureIsUpToDate)
- at System.Web.Compilation.BuildManager.GetVPathBuildResultFromCacheInternal(VirtualPath virtualPath, Boolean ensureIsUpToDate)
- at System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
- at System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
- at System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory(VirtualPath virtualPath, HttpContext context, Boolean allowCrossApp, Boolean throwIfNotFound)
- at System.Web.Compilation.BuildManager.GetCompiledType(VirtualPath virtualPath)
- at System.Web.Mvc.BuildManagerCompiledView.Render(ViewContext viewContext, TextWriter writer)
- at System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context)
- at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
- at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
- at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
- at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult)
- at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)
- at Sitecore.Mvc.Pipelines.MvcEvents.Exception.ShowAspNetErrorMessage.ShowErrorMessage(ExceptionContext exceptionContext, ExceptionArgs args)
- at Sitecore.Mvc.Pipelines.MvcEvents.Exception.ShowAspNetErrorMessage.Process(ExceptionArgs args)
- at (Object , Object )
- at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)
- at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain, Boolean failIfNotExists)
- at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain)
- at Sitecore.Mvc.Pipelines.PipelineService.RunPipeline[TArgs](String pipelineName, TArgs args)
- at Sitecore.Mvc.Filters.PipelineBasedRequestFilter.OnException(ExceptionContext exceptionContext)
- at System.Web.Mvc.ControllerActionInvoker.InvokeExceptionFilters(ControllerContext controllerContext, IList`1 filters, Exception exception)
- at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)
- at System.Web.Mvc.Controller.ExecuteCore()
- at System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext)
- at Sitecore.Mvc.Controllers.ControllerRunner.ExecuteController(Controller controller)
- at Sitecore.Mvc.Controllers.ControllerRunner.Execute(TextWriter writer)
- at Sitecore.Mvc.Pipelines.Response.RenderRendering.ExecuteRenderer.Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)
- at Sitecore.Mvc.Pipelines.Response.RenderRendering.ExecuteRenderer.Process(RenderRenderingArgs args)
- at Helpfulcore.RenderingExceptions.Pipelines.RenderRendering.ExecuteRenderer.Process(RenderRenderingArgs args)
Når vi taler om vigtigheden af at nedbringe landbrugets udledning af
drivhusgasser, kommer vi ikke udenom at diskutere tomater. Det er den
grøntsag, vi spiser flest af, og prognoser viser, at vi fremover kommer til
at spise endnu flere forarbejdede tomater, for eksempel ketchup, tomatsovs
og flåede tomater, siger han.
Spis ikke lokalt
Normalt lærer vi, at det er mest klimavenligt at købe lokalt-producerede
fødevarer, men den regel gælder langtfra, når vi taler om tomater, som har
brug for varme for at vokse. Hvis man udelukkende vælger sine tomater ud
fra et CO2-aftryk, skal man vælge de tomater, som vokser uden
for drivhusene.
– Generelt udleder den sydeuropæiske tomatproduktion mindre CO2,
fordi tomaterne i større grad gror på åbne marker. I Spanien, som
producerer flest tomater i Europa, vokser 40 procent af tomaterne i
drivhuse, men når avlerne i Sydeuropa anvender drivhuse, bruger de også
mindre varme, pointerer Gang Liu:
- System.Web.HttpUnhandledException (0x80004005): An unhandled exception occurred. ---> System.Web.HttpCompileException (0x80004005): c:\home\site\wwwroot\Views\Article\ArticleQuote.cshtml(17): error CS1061: 'Cabana.SDU.Feature.Article.ArticleQuote' does not contain a definition for 'Text' and no extension method 'Text' accepting a first argument of type 'Cabana.SDU.Feature.Article.ArticleQuote' could be found (are you missing a using directive or an assembly reference?)
- at System.Web.Compilation.BuildManager.PostProcessFoundBuildResult(BuildResult result, Boolean keyFromVPP, VirtualPath virtualPath)
- at System.Web.Compilation.BuildManager.GetBuildResultFromCacheInternal(String cacheKey, Boolean keyFromVPP, VirtualPath virtualPath, Int64 hashCode, Boolean ensureIsUpToDate)
- at System.Web.Compilation.BuildManager.GetVPathBuildResultFromCacheInternal(VirtualPath virtualPath, Boolean ensureIsUpToDate)
- at System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
- at System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
- at System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory(VirtualPath virtualPath, HttpContext context, Boolean allowCrossApp, Boolean throwIfNotFound)
- at System.Web.Compilation.BuildManager.GetCompiledType(VirtualPath virtualPath)
- at System.Web.Mvc.BuildManagerCompiledView.Render(ViewContext viewContext, TextWriter writer)
- at System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context)
- at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
- at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
- at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
- at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult)
- at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)
- at Sitecore.Mvc.Pipelines.MvcEvents.Exception.ShowAspNetErrorMessage.ShowErrorMessage(ExceptionContext exceptionContext, ExceptionArgs args)
- at Sitecore.Mvc.Pipelines.MvcEvents.Exception.ShowAspNetErrorMessage.Process(ExceptionArgs args)
- at (Object , Object )
- at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)
- at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain, Boolean failIfNotExists)
- at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain)
- at Sitecore.Mvc.Pipelines.PipelineService.RunPipeline[TArgs](String pipelineName, TArgs args)
- at Sitecore.Mvc.Filters.PipelineBasedRequestFilter.OnException(ExceptionContext exceptionContext)
- at System.Web.Mvc.ControllerActionInvoker.InvokeExceptionFilters(ControllerContext controllerContext, IList`1 filters, Exception exception)
- at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)
- at System.Web.Mvc.Controller.ExecuteCore()
- at System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext)
- at Sitecore.Mvc.Controllers.ControllerRunner.ExecuteController(Controller controller)
- at Sitecore.Mvc.Controllers.ControllerRunner.Execute(TextWriter writer)
- at Sitecore.Mvc.Pipelines.Response.RenderRendering.ExecuteRenderer.Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)
- at Sitecore.Mvc.Pipelines.Response.RenderRendering.ExecuteRenderer.Process(RenderRenderingArgs args)
- at Helpfulcore.RenderingExceptions.Pipelines.RenderRendering.ExecuteRenderer.Process(RenderRenderingArgs args)
– Vi har en lille tomatproduktion i Danmark. Vi importerer langt de fleste
tomater fra Holland, Spanien og Italien, og de bliver formentligt fragtet
hertil med lastbil. Klimafordelen ved at købe lokalt, og dermed undgå
transport, er langt fra nok til at opveje drivhusets klimapåvirkning.
Men Gang Liu understreger, at forbrugerne kan vægte andre parametre, som
for eksempel brug af sprøjtegifte og tillid til producenterne, højere end
CO2, når de køber tomater.
Stort madspild
Forskernes kortlægning af den europæiske tomats CO2-aftryk er
mundet ud i en række anbefalinger til produktionen på gården,
forarbejdningsprocessen, detail-leddet og hjemme hos forbrugerne.
Men når Gang Liu skal pege på de indsatser, hvor der er den største CO 2-besparelse at hente, peger han, udover drivhusene, på et stort
madspild.
I 2016 blev der produceret 18 millioner tons tomater i Europa, men kun 11
millioner tons endte med at blive spist.
Tomaten er egentlig en frugt
-
Selvom tomaten botanisk set er en frugt, så er den handelsmæssigt kategoriseret som en grøntsag. USA's højesteret har i sagen 'Nix v. Hedden' afgjort, at tomaten er grøntsag (Kilde: Wikipedia).
-
Danmark importerede i 2016 35.226 tons friske tomater og 48.300 tons forarbejdede tomater i form af for eksempel tomatsauce, ketchup eller flåede tomater.
-
De friske tomater modtog vi især fra Holland og Spanien, mens de forarbejdede især kom fra Italien og Tyskland.
– Det er klart, at når der sker så stort et madspild, så gør det
produktionen mindre effektiv og det belaster det samlede klimaregnskab,
siger Gang Liu.
Mens den største mængde drivhusgasser blev udledt i produktionsfasen, så
viser forskernes undersøgelser, at det er i forarbejdningsfasen, der sker
det største spild. 43 procent af tomatspildet sker, når tomaterne trylles
om til ketchup eller pastasov.
– Den næststørste andel af spildet, sker i forbrugerstadiet. I butikken
eller hjemme hos familien sker 20 procent af spildet, siger Gang Liu.
Bedre udnyttelse
Alle prognoser viser, at vi i fremtiden vil spise flere forarbejdede og
færre friske tomater, og Gang Liu peger derfor på, at det er vigtigt, at
virksomhederne, som forarbejder tomaterne, bliver bedre til at udnytte hele
tomaten og begrænse det betydelige spild:
– Når det er sagt, kan det ud fra et klimaperspektiv være fornuftigt at
anvende forarbejdede tomatprodukter uden for sæsonen.
– Og så viser tidligere forskning faktisk, at forarbejdede tomater
indeholder mere lycopen, som har en beskyttende virkning mod visse former
for kræft, end friske tomater.
Top foto: Unsplash
Finansiering
Forskningen er finansieret af REFRESH (Resource Efficient Food and dRink for the Entire Supply cHain), under Horizon 2020 – EU’s støtteprogram for forskning og innovation.